一 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 其余简略介绍, 常用的就是它俩
1mode=0(balance-rr)(平衡抡循环策略)
链路负载均衡, 增加带宽, 支持容错, 一条链路故障会自动切换正常链路交换机需要配置聚合口, 思科叫 port channel
特点: 传输数据包顺序是依次传输(即: 第 1 个包走 eth0, 下一个包就走 eth1. 一直循环下去, 直到最后一个传输完毕), 此模式提供负载平衡和容错能力; 但是我们知道如果一个连接
或者会话的数据包从不同的接口发出的话, 中途再经过不同的链路, 在客户端很有可能会出现数据包无序到达的问题, 而无序到达的数据包需要重新要求被发送, 这样网络的吞吐量就会下降
2mode=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.3ad0,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
- rmmod bonding
- modprobe -r bonding
- modeprobe bonding
来源: http://www.bubuko.com/infodetail-2524547.html