在 Ubuntu 系统中,dhclient
是一个用于动态获取 IP 地址的命令行工具。当你使用 dhclient
从 DHCP 服务器获取 IP 地址时,它会自动获取包括子网掩码在内的网络配置信息。
要查看当前网络接口的子网掩码,你可以使用以下方法:
ip
命令:ip addr show <interface>
将 <interface>
替换为你要查看的网络接口名称,例如 eth0
或 wlan0
。输出结果中会显示子网掩码,类似于以下内容:
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 00:1c:42:00:00:08 brd ff:ff:ff:ff:ff:ff
inet 192.168.1.100/24 brd 192.168.1.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::21c:42ff:fe00:8 brd ff:ff:ff:ff:ff:ff scope link
valid_lft forever preferred_lft forever
在这个例子中,子网掩码是 /24
,表示为 CIDR 表示法。要将其转换为传统的子网掩码表示法,可以使用以下命令:
ipcalc -m 192.168.1.100/24
输出结果:
Address: 192.168.1.100 11000000.10101000.00000001.01100100
Netmask: 255.255.255.0 11111111.11111111.11111111.00000000
Wildcard: 0.0.0.255 00000000.00000000.00000000.11111111
=>
Network: 192.168.1.0/24 11000000.10101000.00000001.00000000
HostMin: 192.168.1.1 11000000.10101000.00000001.00000001
HostMax: 192.168.1.254 11000000.10101000.00000001.11111110
Broadcast: 192.168.1.255 11000000.10101000.00000001.11111111
Hosts/Net: 254 Class C, Private Internet
在这个例子中,传统的子网掩码表示法为 255.255.255.0
。
ifconfig
命令(已在较新版本的 Ubuntu 中被弃用,但仍可使用):ifconfig <interface>
将 <interface>
替换为你要查看的网络接口名称。输出结果中会显示子网掩码,类似于以下内容:
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.100 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::21c:42ff:fe00:8 prefixlen 64 scopeid 0x20<link>
ether 00:1c:42:00:00:08 txqueuelen 1000 (Ethernet)
RX packets 1003411 bytes 123456789 (123.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 987654 bytes 987654321 (987.6 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
在这个例子中,子网掩码为 255.255.255.0
。