IP地址、子网掩码、网关(Linux查看和配置)

1.IP地址

        IP地址=网络地址+主机地址,网络地址(网络号)相同的主机为本地网络中的主机,可以直接相互通信,而网络地址不同的主机为远程网络中的主机,相互通信必须通过本地网关(Gateway)。包括A、B、C、D、E五类。
IP地址分类
A类

网络号规定首位为0,因此第一个字节0-127,但由于特殊地址的存在,实际A类第一个字节为1-126

若网络地址10.0.0.0,广播地址10.255.255.255,有效主机地址10.0.0.1-10.255.255.254

B类

网络号规定前2位为10,因此第一个字节为128-191

若网络地址172.16.0.0,广播地址172.16.255.255,则有效主机地址172.16.0.1~172.16.255.254

C类

网络号规定前3位为110,因此第一个字节为192-223

若网络地址192.168.100.0,广播地址192.168.100.255,有效主机地址192.168.100.1~192.168.100.254

D类

网络号规定前4位为1110,因此第一个字节为224-239

E类

网络号规定前4位为1111,因此第一个字节为240-255

1.1 特殊IP

地址 说明
网络号全0 当前子网中的主机地址
网络号全1 所有网络
主机号全0 当前主机所在网络地址
主机号全1 本网络所有主机(广播地址)
127.0.0.1 回环地址,在同一台主机上网络传输
0.0.0.0 本网络的本主机
255.255.255.255 本网络的广播地址

1.2 私有IP

        可在专用网络上使用,但不能通过Internet路由访问的地址,目的是为了安全考虑,也为了节省IP地址空间,通过网络地址转换(NAT)可将私有IP转换到Internet上使用。

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

1.3 网络地址

标识处于哪一个子网,表示网络本身,网络号固定,主机号全0,如:10.0.0.0,172.16.0.0,192.168.10.0。
网络地址=IP地址 & 子网掩码

IP地址:192.168.43.166(11000000 10101000 00101111 10100110)
子网掩码:255.255.255.0(11111111 11111111 11111111 00000000)
网络地址: 192.168.47.0(11000000 10101000 00101111 00000000)

1.4 主机地址

标识子网内的哪一个主机
主机地址=IP地址 &(~子网掩码)

IP地址:192.168.43.166(11000000 10101000 00101111 10100110)
子网掩码:255.255.255.0(11111111 11111111 11111111 00000000)
`子网掩码:0.0.0.255(00000000 00000000 0000000 11111111)
主机地址:0.0.0.166(00000000 00000000 00000000 10100110)

1.5 广播地址

        用于向网络上的所有主机发送信息的地址,网络号固定,主机号全1。如:255.255.255.255(向此地址发送数据包意味给任何网络全部主机发送),172.16.255.255(向网络在172.16.0.0发送),10.255.255.255(向网络在10.0.0.0发送)。

1.6 Linux查看IP信息

#Linux
ifconfig
#Windows
ipconfig

ifconfig

标识 说明
eth0
lo
virbr0
eth0为网卡地址(MAC)
lo为回环地址
virbr0为虚拟网络接口(虚拟机上安装Linux导致)
flags=4163<UP,BROADCAST,RUNNING,MULTICAST> UP-网卡已启动
BROADCAST-网卡广播地址有效
RUNNING-网卡已链接到路由器等设备
MULTICAST-支持组播包
mtu 1500 最大传输单元1500 btye,即链路层的frame的负载最大大小
inet 10.20.141.222
netmask 255.255.255.0
broadcast 10.20.141.255
IPv4地址
子网掩码
广播地址
inet6 fe80::250:56ff:fe8f:580b prefixlen 64 scopeid 0x20<Link> IPv6地址、该地址前64位是网络前缀(类子网掩码作用)、 IPv6 的 Link-Local类型地址
ether 00:50:56:8f:58:0b
txqueuelen 1000 (Ethernet)
网卡的 MAC 地址,对应第 2 层链路层的Ethernet协议
传输数据的缓冲区的存储长度1000
RX bytes
TX bytes
总接收字节总量

2.子网掩码

子网掩码判断出IP地址中的网络地址和主机地址,以A向B传送数据包为例,A和B的IP地址均和A的子网掩码进行与运算
        若结果相同,则说明AB网络地址相同,A可以直接通过ARP广播到B,B可以发现A的MAC地址直接通信
        若结果不同,则AB网络地址不同,ARP广播在本地网关终结,A需要将数据包先发送给本地网关,网关根据B的IP地址查询路由表进行转发送达B。

2.1子网掩码分类

2.1.1 默认子网掩码,网络号均为1,主机号均为0

A类:255.0.0.0
B类:255.255.0.0
C类:255.255.255.0

2.1.2 自定义子网掩码

通过子网划分可解用主机地址充当子网地址
IP地址=网络地址+子网网络地址+子网主机地址

例:IP地址202.112.14.137/27(11001010 01110000 00001110 10001001)
网络号:27位
子网掩码:255.255.255.224(11111111 11111111 11111111 11100000)
~子网掩码:0.0.0.31(00000000 00000000 00000000 00011111)
网络地址:202.112.14.128(11001010 01110000 00001110 10000000)
主机地址:0.0.0.9(00000000 00000000 0000000 00001001)
广播地址:202.112.14.159(11001010 01110000 00001110 10011111)

3.网关

        目标IP在同一网段(网络号相同)可以直接通信不需要经过网关,否则需要。如图例,电脑1和电脑2,电脑3和电脑4均在同一网段直接互通,但电脑1和电脑3、4在不同网段,经过网关转发。
网关

3.1 默认网关

默认网关地址:网络号固定,主机号除最后一位为全置1。若一台主机找不到可用网关,就将数据包发送给默认网关,由该网关来转发。
192.168.43.166/24(11000000 10101000 00101011 10100110) 的默认网关为192.168.43.254/24(11000000 1010100 00101011 11111110)

3.2 Linux查看路由信息route-n

自上而下依次查找
1、去往所有目标地址的数据包由网关10.98.92.250通过网卡eth0转发,Flags有G时才用Gateway
2、去往1.1.1.0地址的数据包通过virbr0网桥设备转发
3、去往10.98.50.0地址的数据包由网关172.21.31.250通过网卡eth1转发
4、去往10.98.93.0的数据包通过网卡eth0转发
5、去往172.16.0.0地址的数据包由网关172.21.31.250通过网卡eth1转发
6、去往172.19.8.0地址的数据包由网关172.19.136.250通过网卡eth2转发
7、去往172.19.72.0地址的数据包由网关172.19.136.250通过网卡eth2转发
8、去往172.19.136.0的数据包通过网卡eth2转发
9、去往172.21.31.0的数据包通过网卡eth1转发
10、去往192.168.0.0的数据包由网关172.21.31.250通过网卡eth1转发

标识 说明
Destination 目的地址,可以是网络地址或主机地址,图中为网络地址
Gateway 网关地址,“*”表示目标地址和本主机所在一个网段,不需要
Genmask 目的地址子网掩码
FLags U-路由是活动的
G-路由指向网关
H-目标是一个主机
R-恢复动态路由产生的表项
D-由路由的后台程序动态地安装
M-由路由的后台程序修改
!-拒绝路由
Metric 路由距离,到达指定网络所需的中转数
Ref 路由引用次数
Use 路由的查找次数
Iface 网络接口

3.3 Linux配置路由

#使用route添加的路由,机器重启或者网卡重启会失效(动态路由)
#添加路由(去往10.98.50.0地址的数据包由网关172.21.31.250通过网卡eth1转发)
route add -net 10.98.50.0 netmask 255.255.255.0 gw 172.21.31.250
#添加路由(去往172.16.0.0地址的数据包由网关172.21.31.250通过网卡eth1转发)
route add -net 172.16.0.0 netmask 255.240.0.0 gw 172.21.31.250

#删除路由
route del -net 10.98.50.0 netmask 255.255.255.0

#添加静态路由,写到/etc/sysconfig/static-routes
cat /etc/sysconfig/static-routes
any net 172.16.0.0/12 gw 172.21.19.250
any net 172.19.72.0/24 gw 172.19.200.250

【网络】route和 IP route的区别|route 和 IP route 添加路由
IP地址虚拟网络与虚拟机网络配置
ip、子网掩码、网关、默认网关
【Linux内核二】常用的网络丢包错包debug工具介绍

猜你喜欢

转载自blog.csdn.net/weixin_47505548/article/details/129733561