一、IP地址的简介
iP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。目前还有些ip代理软件,但大部分都收费。
IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)
二、IP地址的分类
A类地址:
前8位网络ID,后24位为主机ID
网络数126
0xxxxxxx.主机ID.主机ID.主机ID
网络ID最小值00000001 1
网络ID最大值01111111 127 但127是回环地址 所以是126
A类地址的10进制范围是1-126
2^24-2=16777214
B类地址:
前16位网络ID,后16位主机ID
10xxxxxx.xxxxxxxx.主机ID.主机ID
网络数:16384
主机数:2^16-2:65534
网络ID最小值10000000 128
网络ID最大值10111111 191
B类地址的10进制范围是 128-191
C类地址:
前24位网络ID,后8位主机ID
110xxxxx.xxxxxxxx.xxxxxxxx.主机ID
网络数:2^21=2097152
主机数:2^8-2=254
网络ID最小值11000000 192
网络ID最大值11011111 223
C类地址的10进制范围是 192-223
D类地址
用于多播(组播)
1110xxxx.主机ID.主机ID.主机ID
网络数:16
主机数:2^24-2=16777214
网络ID最小值11100000 224
网络ID最大值11101111 239
D类地址的10进制范围是 224-239
E类地址
保留位,多用于实验室
11110xxx.主机ID.主机ID.主机ID
网络数:8
主机数:2^24-2=16777214
网络ID最小值11110000 240
网络ID最大值11111111 254
E类地址的10进制范围是 240-254
公共IP地址
A 1.0.0.0 到 9.255.255.255
11.0.0.0 到126.255.255.255
B 128.0.0.0 到 127.15.255.255
172.32.0.0 到 191.255.255.255
C 192.0.0.0 到 192.167.255.255
192.169.0.0 到 223.255.255.255
私有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
以下条目是为了方便地址运算
00000000 0
00000001 1
00000010 2
00000100 4
00001000 8
00010000 16
00100000 32
01000000 64
10000000 128
00000000 0
11111111 255
三、子网划分
练习1:
IP地址:172.16.100.200
子网掩码:255.255.224.0
255.255.11100000.0
a.用cidr表示法该如何表示(如192.168.0.5/24)
172.16.100.200/19
b.网络id是多少
172.16. 01100100.11001000
255.255.11100000.00000000
172.16. 01100000.00000001
172.16.96.0/19
c.网络主机数有多少
2^(32-19)-2=8190
d.网络主机的范围是多少
172.16.96.1
172.16.127.254
练习2:
IP地址:220.199.211.100
子网掩码:255.255.248.0
a.用cidr表示法该如何表示(如192.168.0.5/24)
255.255.11111000
220.199.211.100/21
b.网络id是多少
220.199.11010011.100
255.255.11111000.0
220.199.11010000.0
220.199.208.0/21
c.网络主机数有多少
2^11-2=2046
d.网络主机的范围是多少
220.199.208.1
220.199.215.254
练习3:
IP地址:114.203.188.10/20
a.子网掩码?
255.255.240.0
b.网络ID
114.203.10111100.00001010
255.255.11110000.00000000
114.203.10110000.0
114.203.176.0/20
c.主机数?
2^12-2=4094
d.主机范围
114.203.176.1/20--114.203.191.254/20
公式:
1.计算网络数:2^可变的网络ID
2.计算网络中的主机最大数量:2^主机ID位-2
3.划分子网的数量=2^网络ID向主机ID借的位数
160.200.0.0/16
160.200.0 0000000.0/17
160.200.0.0/17 160.200.128.0/17
练习:160.200.0.0/16 将其划分为16个子网
a.划分子网的netmask
2^n=16 n=4
255.255.240.0
b.每个子网的主机数?
2^(32-20)=4094
c.最小,最大的子网的网络ID?
160.200.0.0/20
160.200.240.0/20
d.最大的子网的的IP范围。
160.200.240.1/20
160.200.255.254/20
e.对最大的子网划分32个子子网。还是以上4个要求
160.200.240.0/20
e.1 划分子网的netmask
2^n=32 n=5
255.255.11111111.1 0000000
255.255.255.128
e.2 每个子网的主机数?
2^7-2=126
e.3 最小,最大的子网的网络ID?
160.200.240.0/25
160.200.255.128/25
e.4 最大的子网的的IP范围。
160.200.255.129/25 160.200.255.254/25
子网划分:将一个大的网络分割为多个小网络,每个小网络的主机ID变少,网络ID变多,原来的大网络的网络ID向主机ID位借位
超网划分:将多个小网络合并成一个大网络,每个网络主机ID变多,网络ID变少,原来的主机ID位向网络ID位借位。其目的是节约路由器的记录数
四、Linux双网卡绑定
bond模式理论基础:主要介绍 0 和 1 其余简略介绍,常用的就是它俩。
1、mode=0(balance-rr)(平衡抡循环策略)
链路负载均衡,增加带宽,支持容错,一条链路故障会自动切换正常链路。交换机需要配置聚合口,思科叫port channel。
特点:传输数据包顺序是依次传输(即:第1个包走eth0,下一个包就走eth1….一直循环下去,直到最后一个传输完毕),此模式提供负载平衡和容错能力;但是我们知道如果一个连接
或者会话的数据包从不同的接口发出的话,中途再经过不同的链路,在客户端很有可能会出现数据包无序到达的问题,而无序到达的数据包需要重新要求被发送,这样网络的吞吐量就会下降
2、mode=1(active-backup)(主-备份策略)
这个是主备模式,只有一块网卡是active,另一块是备用的standby,所有流量都在active链路上处理,交换机配置的是捆绑的话将不能工作,因为交换机往两块网卡发包,有一半包是丢弃的。
特点:只有一个设备处于活动状态,当一个宕掉另一个马上由备份转换为主设备。mac地址是外部可见得,从外面看来,bond的MAC地址是唯一的,以避免switch(交换机)发生混乱。
此模式只提供了容错能力;由此可见此算法的优点是可以提供高网络连接的可用性,但是它的资源利用率较低,只有一个接口处于工作状态,在有 N 个网络接口的情况下,资源利用率为1/N
Mode=3(broadcast) 表示所有包从所有interface发出,这个不均衡,只有冗余机制...和交换机的聚合强制不协商方式配合。
Mode=4(802.3ad) 表示支持802.3ad协议,和交换机的聚合LACP方式配合(需要xmit_hash_policy)
Mode=5(balance-tlb) 是根据每个slave的负载情况选择slave进行发送,接收时使用当前轮到的slave
Mode=6(balance-alb) 在5的tlb基础上增加了rlb。
5和6不需要交换机端的设置,网卡能自动聚合。4需要支持802.3ad。0,2和3理论上需要静态聚合方式
但实测中0可以通过mac地址欺骗的方式在交换机不设置的情况下不太均衡地进行接收。需要说明的是如果想做成mode 0的负载均衡,仅仅设置这里options bond0 miimon=100 mode=0是不够的,与网卡相连的交换机必须做特殊配置(这两个端口应该采取聚合方式),因为做bonding的这两块网卡是使用同一个MAC地址.从 原理分析一下(bond运行在mode 0下)
五、配置bond
1.加载bond module [root@lixin etc]# modprobe bonding 查看网卡信息
2.在网卡配置文件下创建ifcfg-bond0文件并配置
3.配置两块网卡信息
4.停止/etc/init.d/NetworkManager stop 再次查看网卡配置时发现它们的MAC地址一样了
5.bond删除 删除网卡配置文件下对应的文件 如果没恢复就执行 lsmod | grep bonding 查看bond模块 rmmod bonding 删除bond模块 modprobe -r bonding 自动卸载闲置bond模块 modeprobe bonding 启动bond模块