子網划分
IP地址的結構和分類
根據tcp/ip協議,連接在Internet上的每個設備都必須有一個IP地址,它是一個32位二進制數,為了方便人類識別,我們將它用點分十進制表示,每8位分為一段。
IP地址范圍:0.0.0.0 - 255.255.255.255
IP地址的分類
為了方便管理,人們將IP地址分為A、B、C、D、E五類
類別 | 前8位 | 范圍 | 子網掩碼 |
---|---|---|---|
A類 | 0 開頭 | 1 - 126 | /8 |
B類 | 10 開頭 | 128 - 191 | /16 |
C類 | 110 開頭 | 192 - 233 | /24 |
D類 | 1110 開頭 | 224 - 239 | 多播組 |
E類 | 11110開頭 | 240 - 255 | 保留 |
特殊IP地址
-
1、網絡地址:用於表示網絡本身,具有正常的網絡號部分,而主機號部分全部為0的IP地址稱之為網絡地址,如192.168.1.0就是一個C類的網絡地址
-
2、廣播地址:用於向網絡中的所有設備進行廣播。具有正常的網絡號部分,而主機號部分全為1(即十進制255)的IP地址為廣播地址,如192.168.1.255就是一個C類的廣播地址
-
3、有限廣播地址:指的是32位全為1(即255.255.255.255)的IP地址,用於本網廣播。
-
4、回環地址:網絡地址不能以十進制的127開頭,在地址數字127保留給系統作為測試使用。如127.0.0.1用於本地主機測試網絡
-
5、私有地址:只能在局域網內使用,不能再Internet上使用的IP地址稱為私有IP地址,其中包括:
- A類:10.0.0.0 - 10.255.255.255
- B類:172.16.0.0 - 172.31.255.255
- C類:192.168.0.0 - 192.168.255.255
注:這些地址不會被Internet分配,因此它們在Internet上也從來不會被路由,雖然它們不能直接和Internet網連接,但仍可以用來和Internet通信,我們可以根據需要來選用適當的地址類,在內部局域網中大膽地將這些地址當作公用IP地址一樣使用。在Internet上,那些不需要與Internet通信的設備,如打印機、集線器等設備也可以使用這些地址,以節省IP地址資源。
-
6、0.0.0.0:指已經不是真正意義上的IP地址,它表示的是所有不清楚主機和目的網絡,這里不清楚指的是本機路由表里沒有特定條目指明如何到達
子網掩碼
一個IP地址由網絡號和主機號組成,單獨一個IP地址無法區分網絡號和主機號,需要通過子網掩碼來標識一個IP地址的網絡號個數。子網掩碼是一個32位的2進制數,其對應的IP地址網絡位,子網掩碼就標記為1,主機地址的所有位置都標記為0。
子網掩碼的兩種表示方式
- 1、直接跟在IP地址后面,有多少位1就寫多少位。如C類地址的標准子網掩碼是24位,那么我們可以寫成192.168.1.1/24
- 2、采用點分十進制與IP地址一起表示,如IP是192.168.1.1,子網掩碼255.255.255.0
通過子網掩碼計算網絡地址與廣播地址
子網掩碼能區分一個IP地址的網絡位和主機位,將IP地址和子網掩碼轉換為二進制的格式,按位進行與運算,最后得出的結果就是該IP地址所屬的網絡地址。
# 如192.168.12.10/24,換算成二進制就是
11000000.10101000.00001100.00001010
11111111.11111111.11111111.00000000
# 將每一位相與最后的結果就是
11000000.10101000.00001100.00000000
# 這就是該IP地址所屬的網絡地址,換算成十進制
192.168.12.0
IP地址和子網掩碼按位與運算后,將最后的結果的主機位全寫為1即為該網絡的廣播地址。
# 如192.168.12.10/24,換算成二進制后將每一位相與最后的結果就是
11000000.10101000.00001100.00000000
# 將最后的主機位全改為1,即為廣播地址
11000000.10101000.00001100.11111111
# 換算成十進制就是
192.168.12.255
子網划分的原因
IP地址被定義了五種分類,用於主機的有A、B、C三類。其中A類網絡有126個,每個網段最大可以用16777214(除掉網絡地址和廣播地址)台主機,它們處於同一廣播域。這么多主機處於同一網絡是不可能的,網絡會因為廣播通信而飽和,無法傳輸正確的數據。另外,IP地址資源非常有限,為了實現更小的廣播域並更好地利用主機地址中的每一位,可以把基於類的IP網絡進一步分成更小的網絡,每個子網由路由器界定並分配一個新的子網網絡地址,子網地址是借用基於類的網絡地址的主機部分創建的。划分子網后,通過使用掩碼,把子網隱藏起來,使得從外部看網絡沒有變化,這就是子網划分。
子網划分的好處:
- 1、減少廣播流量,提高性能
- 2、方便管理
如何划分
子網划分是通過借用IP地址的若干主機位來充當網絡位從而將原來的網絡分為若干個彼此隔離的子網絡。
如192.168.12.10/24,原來的網絡地址是192.168.12.0,廣播地址是192.168.12.255,可供254台設備使用,若要將其划分為5個子網絡。2**2-2 < 5 < 2**3-2 所以需要3位網絡號,主機號就為8 - 3 = 5,子網掩碼就是/27 or 255.255.255.224
# 子網1范圍
192.168.10.0/27 - 192.168.10.31/27
IP: 11000000.10101000.00001100.00001010 -》 192.168.10.24
Mask: 11111111.11111111.11111111.11100000 -》 255.255.255.224
Net: 11000000.10101000.00001100.00000000 -》 192.168.10.0
Broadcast:11000000.10101000.00001100.00011111 -》 192.168.10.31
# 子網2范圍
192.168.10.32/27 - 192.168.10.63/27
# 子網3范圍
192.168.10.64/27 - 192.168.10.95/27
# 子網4范圍
192.168.10.96/27 - 192.168.10.127/27
# 子網5范圍
192.168.10.128/27 - 192.168.10.159/27
# 子網6范圍
192.168.10.160/27 - 192.168.10.191/27
# 子網7范圍
192.168.10.192/27 - 192.168.10.223/27
# 子網8范圍
192.168.10.224/27 - 192.168.10.255/27
每個子網中主機位全為0的是子網地址,全為1的是廣播地址,所以實際能接入的主機數量是29。划分的子網中0字段和255字段是原網段的網絡地址和廣播地址,一般保留不做實際使用。
子網划分注意事項
- 1、在子網划分時不僅需要考慮目前需要,還應該了解將來需要多說子網和主機。子網掩碼使用較多的主機位,可以得到更多子網,節約了ip地址資源,若將來需要更多的子網時,不用再重新分配ip地址,但每個子網的主機數量有限;反之,子網掩碼使用較少的主機位,每個子網的主機數允許有更大的增長,但可用子網數有限。
- 一般來說,一個網絡中的節點數太多,網絡會因為廣播通信而飽和,所以網絡中的主機數量的增長是有限的,也就是說,在條件允許的情況下,應將更多的主機位用於子網位。
子網划分和VLAN
子網划分是通過子網掩碼將一個大網絡划分成數個小網絡,這是基於網絡層的划分,但普通二層交換機是工作在數據鏈路層,對於交換機內的廣播域並沒有做到隔離,所以子網划分通常還會與VLAN配合使用。
LAN
由Hub、網橋或交換機等網絡設備連接在同一網段內的所有節點形成局域網,通常是一個單獨的廣播域。處於同一個LAN內的網絡節點之間可以直接通信,處於不同局域網段的設備之間的通信則必須經過路由器。
通過路由器隔離LAN在網絡規模增大的情況下存在兩個缺陷:
- 1、路由器數量需要增多,網絡時延隨之加長,進而導致網絡數據傳輸速度的下降。這主要是因為數據在從一個局域網傳遞到另一個局域網時,必須經過路由器的路由操作: 路由器根據數據包中的相應信息確定數據包的目標地址,然后再選擇合適的路徑轉發出去。
- 2、用戶是按照它們的物理連接被自然地划分到不同的用戶組(廣播域)中。這種分割方式並不是根據工作組中所有用戶的共同需要和帶寬的需求來進行的。因此,盡管不同的工作組或部門對帶寬的需求有很大的差異,但它們卻被機械地划分到同一個廣播域中爭用相同的帶寬。
綜上兩點,必須選出一種隔離廣播域的方式,兼備下述兩點
1.可以不用通過路由器來隔離不同廣播域
2.可以突破地理位置的限制,在邏輯上划分出不同的廣播域
這就是VLAN,IEEE 802.1Q 標准定義了 VLAN Header 的格式。它在普通以太網幀結構的 SA (src addr)之后加入了 4bytes 的 VLAN Tag/Header 數據,其中包括 12-bits 的 VLAN ID。VLAN ID 最大值為4096,但是有效值范圍是 1 - 4094。
VLAN
Virtual Local Area Network,虛擬局域網。
帶 VLAN 的交換機的端口分為兩類:
- Access port:這些端口被打上了 VLAN Tag。離開交換機的 Access port 進入計算機的以太幀中沒有 VLAN Tag,這意味着連接到 access ports 的機器不會覺察到 VLAN 的存在。離開計算機進入這些端口的數據幀被打上了 VLAN Tag。
- Trunk port: 有多個交換機時,組A中的部分機器連接到 switch 1,另一部分機器連接到 switch 2。要使得這些機器能夠相互訪問,你需要連接兩台交換機。 要避免使用一根電纜連接每個 VLAN 的兩個端口,我們可以在每個交換機上配置一個 VLAN trunk port。Trunk port 發出和收到的數據包都帶有 VLAN header,該 header 表明了該數據包屬於那個 VLAN。因此,只需要分別連接兩個交換機的一個 trunk port 就可以轉發所有的數據包了。通常來講,只使用 trunk port 連接兩個交換機,而不是用來連接機器和交換機,因為機器不想看到它們收到的數據包帶有 VLAN Header。
VLAN的類型
-
1、基於端口的 VLAN (untagged VLAN - 端口屬於一個VLAN,數據幀中沒有VLAN tag)
這種模式中,在交換機上創建若干個VLAN,在將若干端口放在每個VLAN 中。每個端口在某一時刻只能屬於一個VLAN。一個 VLAN 可以包含所有端口,或者部分端口。每個端口有個PVID (port VLAN identifier)。這種模式下,一個端口上收到的 frame 是 untagged frame,因此它不包含任何有關 VLAN 的信息。VLAN 的關系只能從端口的 PVID 上看出來。交換機在轉發 frame 時,只將它轉發到相同 PVID 的端口。
-
2、Tagged VLANs (數據幀中帶有 VLAN tag)
這種模式下,frame 的VLAN 關系是它自己攜帶的信息中保存的,這種信息叫 a tag or tagged header。當交換機收到一個帶 VLAN tag 的幀,它只將它轉發給具有同樣 VID 的端口。一個能夠接收或者轉發 tagged frame 的端口被稱為 a tagged port。所有連接到這種端口的網絡設備必須是 802.1Q 協議兼容的。這種設備必須能處理 tagged frame,以及添加 tag 到其轉發的 frame。
VLAN的不足
- 1、VLAN 使用 12-bit 的 VLAN ID,所以 VLAN 的第一個不足之處就是它最多只支持 4096 個 VLAN 網絡(當然這還要除去幾個預留的),對於大型數據中心的來說,這個數量是遠遠不夠的。
- 2、VLAN 是基於 L2 的,所以很難跨越 L2 的邊界,在很大程度上限制了網絡的靈活性。
- 3、VLAN 操作需手工介入較多,這對於管理成千上萬台機器的管理員來說是難以接受的。