1、总结ip分类以及每个分类可以分配的IP数量
Internet 委员会定义了5种IP地址类型,分别是A-E类,其中D和E类为特殊地址。
IP地址分类 | 每个网段的合法IP地址数量 | 根据第一个字节的范围,将IP地址分类 | 可划分网段个数 |
---|---|---|---|
(1)网络地址最高位是0的地址为A类地址 | 16777214 | 1-126.x.x.x的是A类地址 | 126个网段 |
(2)网络地址最高位是10的地址为B类地址 | 65534 | 128-191.x.x.x的是B类地址 | 16384个网段 |
(3)网络地址最高位是110的地址为C类地址 | 254 | 192-223.x.x.x的是C类地址 | 2097152个网段 |
(4)网络地址最高位是1110的地址为D类地址 | N\A | 224-239.x.x.x的是D类地址 | N\A |
(5)网络地址最高位是11110的地址为E类地址 | N\A | 240-255.x.x.x的是E类地址 | N\A |
A 类地址的网络部分最高位是0,所以IP的第一部分的格式是 0xxxxxxx,那么它的范围是:
00000000=0, 01111111=127
即A类地址第一部分的十进制范围是 0 到127,所以 1.2.3.4和100.100.120.120都是A类地址。
B 类地址的网络部分最高位是10,所以IP的第一部分格式是 10xxxxxx, 那么它的范围是:
10000000=128,10111111=191
所以B 类网络地址的第一个字节取值位 128-191.
C 类地址的网络部分最高位是110,所以IP的第一部分的格式是110xxxxx,那么它的范围是:
11000000=192,11011111=223
所以C 类网络地址的第一个字节取值位 192-223
保留地址 | 作用 |
---|---|
整个IP地址全位1,即255.255.255.255 | 发送给当前网络所有节点的广播,也称全1广播或受限广播 |
整个IP地址全为0 即 0.0.0.0 | 在路由器中表示默认路由的目标地址 在服务监听时,表示监听本机上任何有效地址;在地址冲突时,也会显示0.0.0.0 |
主机位全为1 | 表示当前网络中的所有节点,也是广播 |
主机位全为0 | 表示当前网段 |
127.0.0.1 | 回环地址,表示节点自身,数据只在主机自身流转,不会产生网络流量。可用于测试主机的TCP/IP协议栈是否正常工作。 |
按照分类标准,A类地址的网络位占用一个字节,B类地址占用2个字节,C类地址的网络位占用3个字节。
分类\字节 | 00000000 | 00000000 | 00000000 | 00000000 |
---|---|---|---|---|
A类地址 | 网络部分 | 主机部分 | 主机部分 | 主机部分 |
B类地址 | 网络部分 | 网络部分 | 主机部分 | 主机部分 |
C类地址 | 网络部分 | 网络部分 | 网络部分 | 主机部分 |
D类地址 | 组播地址 | |||
E类地址 | 用于研究 |
计算合法IP地址数量:
A 类地址,它的网络位只在第一个字节,所以主机位是3个字节,
主机位的每个字节范围都是0-255,其中不能是全0或全255(全0表示网段,全255表示广播)。
所以,A类地址:00000000 ~ 01111111
共有126个网段;
每个网段的合法地址数量为 256*256*256-2=16777214
B类网址,网络部分占用2个字节,其范围是 128-191,主机位是2个字节。
所以B类地址:10000000.00000000 ~ 10111111.11111111
共有 2^6 * 2^8 = 16384 个网段,
每个网段的合法地址数量是 256*256-2=65534
C 类地址,网络位占3 个字节,其范围是: 192-223, 主机位是1个字节
所以C类地址:11000000.00000000.00000000 ~ 11011111111.11111111.11111111
共有 2^5 * 2^8 *2^8=2097152 个网段;
每个网段合法地址为 256-2=254
每个公网地址都是独立拥有的,只有某个人能使用,所以公网地址的数量是有限的。为节省IP地址,避免每台电脑都分配一个公网地址,所以提供给了私有地址。任何人都能使用私有地址,它们只能由于局域网内,不能用于公网。
使用私有地址时,如果需要上公网,需要结合NAT(网络地址转换)功能,在流量出去的时候,需要转换成公网地址,才能在网络上路由。
私有地址 | 私有地址 | 可用网段数 |
---|---|---|
A类私有地址: | 10.0.0.0 ~ 10.255.255.255.255 | 1 |
B类私有地址: | 172.16.0.0 ~ 172.16.255.255 | 32 |
C类私有地址: | 192.168.0.0 ~ 192.168.255.255 | 256 |
2、总结IP配置方法
Linux :
方法一:
1 修改配置文件:vi /etc/sysconfig/network-scripts/ifcfg-eth0
2、修改如下配置选项
(1)bootproto=static
(2)onboot=yes
(3)在最后加上几行,IP地址、子网掩码、网关、dns服务器
IPADDR=192.168.1.160
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=119.29.29.29
DNS2=8.8.8.8
3、重启网络服务
systemctl restart network
方法二 :
配置eth0网卡地址为 1.1.1.1/24.
ifconfig eth0 1.1.1.1/24 up
或
ifconfig eht0 1.1.1.1 netmask 255.255.255.0 up
ifconfig 命令
-a 表示显示所有接口配置信息包含状态为down的接口;
-s 显示接口的简短列表,等同 netstat -i
interface: 指定接口名称,例如 eth0
options:
up: 激活接口;等同 ifup
down : 禁用接口;等同 ifdown
address: 地址;
IP/NETMASK[up]: 设置 ip 地址和掩码(使用掩码前缀格式),up表示激活
IP netmask NETMASK: 设定ip 地址和掩码;
windows : 如图
image.png
3、使用nmcli实现bonding
1.添加两块用于实验的网卡
2.创建master 角色:
[root@localhost ~]# nmcli con add type bond con-name bond0 ifname bond0 mode active-backup
Connection 'bond0' (f7ecdd09-4268-4f27-8770-7e6a01d40ddb) successfully added.
[root@localhost ~]#
3.添加slave 到 master上:
[root@localhost ~]# nmcli con add type bond-slave ifname eth2 master bond0
Connection 'bond-slave-eth2' (99398aba-744d-4eef-a78f-da21d6d78b84) successfully added.
[root@localhost ~]# nmcli con add type bond-slave ifname eth3 master bond0
Connection 'bond-slave-eth3' (1e463a0a-6b90-4f3c-918d-241aa0b2f21e) successfully added.
[root@localhost ~]#
4.查看:
[root@localhost ~]# nmcli con show
NAME UUID TYPE DEVICE
bond0 e67993c5-3d44-4fd2-96aa-ef611796084e bond bond0
eth0 f79b378c-2edf-4081-8c12-ca85c28af831 ethernet eth0
eth1 7741c3d1-d78d-46cf-aaf5-d585a52362e6 ethernet eth1
eth2 3c4aac12-5b61-4b39-923a-d16737ffaf39 ethernet eth2
virbr0 dd291ba2-28de-4947-9c8a-7a14ed1130d7 bridge virbr0
bond-slave-eth1 11979196-1a7a-48a1-889e-3079fd135bd0 ethernet --
bond-slave-eth2 b51a0c17-8bfe-412b-abd8-041dc723a054 ethernet --
eth3 03ccfd62-38d0-4303-8a73-bd352095ac3f ethernet --
[root@localhost ~]#
5.启动bond 先启动 slave最后启动master:
[root@localhost ~]# nmcli con up bond-slave-eth1
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/7)
[root@localhost ~]# nmcli con up bond-slave-eth2
Connection successfully activated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/8)
[root@localhost ~]# nmcli con up bond0
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9)
[root@localhost ~]# nmcli con show
NAME UUID TYPE DEVICE
eth0 f79b378c-2edf-4081-8c12-ca85c28af831 ethernet eth0
bond0 e67993c5-3d44-4fd2-96aa-ef611796084e bond bond0
virbr0 dd291ba2-28de-4947-9c8a-7a14ed1130d7 bridge virbr0
bond-slave-eth1 11979196-1a7a-48a1-889e-3079fd135bd0 ethernet eth1
bond-slave-eth2 b51a0c17-8bfe-412b-abd8-041dc723a054 ethernet eth2
eth1 7741c3d1-d78d-46cf-aaf5-d585a52362e6 ethernet --
eth2 3c4aac12-5b61-4b39-923a-d16737ffaf39 ethernet --
eth3 03ccfd62-38d0-4303-8a73-bd352095ac3f ethernet --
[root@localhost ~]#
[root@localhost ~]# ifconfig
bond0: flags=5187<UP,BROADCAST,RUNNING,MASTER,MULTICAST> mtu 1500
inet 192.168.78.131 netmask 255.255.255.0 broadcast 192.168.78.255
inet6 fe80::8efb:f916:c11c:df6b prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:2a:6f:45 txqueuelen 1000 (Ethernet)
RX packets 36 bytes 3272 (3.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 25 bytes 2716 (2.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth1: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
ether 00:0c:29:2a:6f:45 txqueuelen 1000 (Ethernet)
RX packets 160 bytes 10640 (10.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 39 bytes 3828 (3.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth2: flags=6211<UP,BROADCAST,RUNNING,SLAVE,MULTICAST> mtu 1500
ether 00:0c:29:2a:6f:45 txqueuelen 1000 (Ethernet)
RX packets 160 bytes 10586 (10.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 16 bytes 1232 (1.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
启动后:查看网络接口,将发现eth1 和 eth2已经没有 IP地址,并且新增了一个bond0 接口,这三个接口的MAC地址完全一致。