1. 程式人生 > >子網劃分思路

子網劃分思路

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

D類地址稱為廣播地址,供特殊協議向選定的節點發送資訊時用。

E類地址保留給將來使用。

A類IP地址 一個A類IP地址由1位元組的網路地址和3位元組主機地址組成,網路地址的最高位必須是"0", 地址範圍從1.0.0.0 到126.0.0.0。可用的A類網路有126個,每個網路能容納1億多個主機  

B類IP地址 一個B類IP地址由2個位元組的網路地址和2個位元組的主機地址組成,網路地址的最高位必須是"10",地址範圍從128.0.0.0到191.255.255.255。可用的B類網路有16,382個,每個網路能容納6萬多個主機 。 C類IP地址 一個

C類地址是由3位元組的網路地址和1位元組的主機地址組成,網路地址的最高位必須是"110"。範圍從192.0.0.0 - 223.255.255.255 C類網路達209萬餘個,每個網路能容納254個主機。

11111111.11111111.11111111.00000000250.255.255.0192.168.1.0

某一網段Ip地址總數  2^n  2^8=256個

n=所在網段的主機位數

能用ip地址數   2^n-2

子網數  2^y  y=所借位數

借位:把主機位借給網路位使用

11111111.11111111.11111111.11111000

網路位 主機位 子網數 每段IP個數 能用IP個數 子網掩碼
-7 17 15 2^0=1 2^15=32768 32766 255.255.0.128
-6 18 14 2^0=1 2^14=16384 16382 255.255.0.192
-5 19 13 2^0=1 2^13=8192 8190 255.255.0.224
-4 20 12 2^0=1 2^12=4096 4094 255.255.0.240
-3 21 11 2^0=1 2^11=2048 2042 255.255.0.248
-2 22 10 2^0=1 2^10=1024 1022 255.255.0.252
-1 23 9 2^0=1 2^9=512 510 255.255.0.254

借位

網路位

主機位

子網數

每段IP個數

能用IP個數

子網掩碼

0 24 8 2^0=1 2^8=256 254 255.255.255.0

1

25

7

2^1=2

2^7=128

126

255.255.255.128

2

26

6

2^2=4

2^6=64

62

255.255.255.192

3

27

5

2^3=8

2^5=32

30

255.255.255.224

4

28

4

2^4=16

2^4=16

14

255.255.255.240

5

29

3

2^5=32

2^3=8

6

255.255.255.248

6

30

2

2^6=64

2^2=4

2

255.255.255.252

7

31

1

2^7=128

2^1=2

0

 255.255.255.254

計算網路地址

#!/bin/bash #

ETH0_MASK=$(ifconfig eth0 | grep netmask | awk '{print $4}') ETH0_IP=$(ifconfig eth0 | grep netmask | awk '{print $2}') #WLAN0_MASK=$(ifconfig wlan0 | grep "inet addr:" | awk -F " " '{print $4}' | awk -F ":" '{print $2}') #WLAN0_IP=$(ifconfig wlan0 | grep "inet addr:" | awk -F " " '{print $2}' | awk -F ":" '{print $2}')

get_netdes() { ip1=$(echo $1 | awk -F "." '{print $1}') ip2=$(echo $1 | awk -F "." '{print $2}') ip3=$(echo $1 | awk -F "." '{print $3}') ip4=$(echo $1 | awk -F "." '{print $4}') echo "IP:$ip1.$ip2.$ip3.$ip4" mask1=$(echo $2 | awk -F "." '{print $1}') mask2=$(echo $2 | awk -F "." '{print $2}') mask3=$(echo $2 | awk -F "." '{print $3}') mask4=$(echo $2 | awk -F "." '{print $4}') echo "MASK:$mask1.$mask2.$mask3.$mask4"

var=1 var=$[$var+1] gate1=$(($ip1&$mask1)) gate2=$(($ip2&$mask2)) gate3=$(($ip3&$mask3)) gate4=$(($ip4&$mask4)) echo "網路地址:$gate1.$gate2.$gate3.$gate4" }

get_netdes  $ETH0_IP $ETH0_MASK #get_gateway $ETH0_IP $ETH0_MASK

以192.168.1.0/24為例

借一位:

網段表示      IP範圍

192.168.1.0/25  0-127

192.168.1.128/25  128-255

借二位:

網段表示      IP範圍

192.168.1.0/26  0-63

192.168.1.64/26  64-127

192.168.1.128/26  128-191

192.168.1.192/26  192-255

借三位:

網段表示      IP範圍

192.168.1.0/27  0-31

192.168.1.32/27  32-63

192.168.1.64/27  64-95

192.168.1.96/27  96-127

192.168.1.128/27  128-159

192.168.1.160/27  160-191

192.168.1.192/27  192-223

192.168.1.224/27  224-255

借四位:

網段表示      IP範圍

192.168.1.0/28  0-15

192.168.1.16/28  16-31

192.168.1.32/28  32-47

192.168.1.48/28  48-63

192.168.1.64/28  64-79

192.168.1.80/28  80-95

192.168.1.96/28  96-111

192.168.1.112/28  112-127

192.168.1.128/28  128-143

192.168.1.144/28  144-159

192.168.1.160/28  160-175

192.168.1.176/28  176-191

192.168.1.192/28  192-207

192.168.1.208/28  208-223

192.168.1.224/28  224-239

192.168.1.240/28  240-255

借五位:

網段表示      IP範圍

192.168.1.0/29  0-7

192.168.1.8/29  8-15

192.168.1.16/29  16-23

192.168.1.24/29  24-31

192.168.1.32/29  32-39

192.168.1.40/29  40-47

192.168.1.48/29  48-55

192.168.1.56/29  56-63

192.168.1.64/29  64-71

192.168.1.72/29  72-79

192.168.1.80/29  80-87

192.168.1.88/29  88-95

192.168.1.96/29  96-103

192.168.1.104/29  104-111

192.168.1.112/29  112-119

192.168.1.120/29  120-127

192.168.1.128/29  128-135

192.168.1.136/29  136-143

192.168.1.144/29  144-151

192.168.1.152/29  152-159

192.168.1.160/29  160-167

192.168.1.168/29  168-175

192.168.1.176/29  176-183

192.168.1.184/29  184-191

192.168.1.192/29  192-199

192.168.1.200/29  200-207

192.168.1.208/29  208-215

192.168.1.216/29  216-223

192.168.1.224/29  224-231

192.168.1.232/29  232-239

192.168.1.240/29  240-247

192.168.1.248/29  248-255

借六位:

網段表示      IP範圍

192.168.1.0/30  0-3

192.168.1.4/30  4-7

192.168.1.8/30  8-11

192.168.1.12/30  12-15

192.168.1.16/30  16-19

192.168.1.20/30  20-23

192.168.1.24/30  24-27

192.168.1.28/30  28-31

192.168.1.32/30  32-35

192.168.1.36/30  36-39

192.168.1.40/30  40-43

192.168.1.44/30  44-47

192.168.1.48/30  48-51

192.168.1.52/30  52-55

192.168.1.56/30  56-59

192.168.1.60/30  60-63

192.168.1.64/30  64-67

192.168.1.68/30  68-71

192.168.1.72/30  72-75

192.168.1.76/30  76-79

192.168.1.80/30  80-83

192.168.1.84/30  84-87

192.168.1.88/30  88-91

192.168.1.92/30  92-95

192.168.1.96/30  96-99

192.168.1.100/30  100-103

192.168.1.104/30  104-107

192.168.1.108/30  108-115

192.168.1.116/30  116-119

192.168.1.120/30  120-123

192.168.1.124/30  124-127

192.168.1.128/30  128-131

192.168.1.132/30  132-135

192.168.1.136/30  136-139

192.168.1.140/30  140-143

192.168.1.144/30  144-147

192.168.1.148/30  148-151

192.168.1.152/30  152-155

192.168.1.156/30  156-159

192.168.1.160/30  160-163

192.168.1.164/30  164-167

192.168.1.168/30  168-171

192.168.1.172/30  172-175

192.168.1.176/30  176-179

192.168.1.180/30  180-183

192.168.1.184/30  184-187

192.168.1.188/30  188-191

192.168.1.192/30  192-195

192.168.1.196/30  196-199

192.168.1.200/30  200-203

192.168.1.204/30  204-207

192.168.1.208/30  208-215

192.168.1.216/30  216-219

192.168.1.220/30  220-223

192.168.1.224/30  224-227

192.168.1.228/30  228-231

192.168.1.232/30  232-235

192.168.1.236/30  236-239

192.168.1.240/30  240-243

192.168.1.244/30  244-247

192.168.1.248/30  248-251

192.168.1.252/30  252-255

附加:

在linux下永久新增靜態路由有兩種方法:

新增路由的命令:

1,route add

1

2

3

4

route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0#新增一條靜態路由

route add default gw 192.168.0.1#新增預設路由

route del -net 192.168.1.0/24 gw 192.168.0.1#刪除一條路由

route -n#檢視路由表

2,ip ro add

1

2

3

4

ip ro add 192.56.76.0/24 dev 192.168.0.1#新增一條靜態路由

ip ro add default via 192.168.0.1 dev eth0#新增預設路由

ip ro del 192.168.1.0/24#刪除一條路由

ip route show#檢視路由表