我们有,
Class Range NetMask Bits Bits hosts#
----------------------------------------------------------
A 0-127 255.0.0.0 8 24 16777216 (i.e. 114.0.0.0)
B 128-191 255.255.0.0 16 16 65536 (i.e. 150.0.0.0)
C 192-254 255.255.255.0 24 8 256 (i.e. 199.0.0.0)
还,
$cat /proc/version
Linux version 2.6.32-amd64 (gcc version 4.3.2 (Debian 4.3.2-1.1) ) #1 SMP Tue Jul 1 18:36:07 UTC 2011
$ip route show
114.0.0.0/24 dev eth1 scope link
114.0.0.0/16 dev eth1 scope link
114.0.0.0/8 dev eth1 scope link
199.0.0.0/8 dev eth1 scope link
122.0.0.0/8 dev eth1 scope link
default via 16.107.200.1 dev eth0
default via 16.107.200.1 dev eth1
default via 16.107.200.20 dev eth1
default via 16.107.200.21 dev eth1
default via 16.107.200.22 dev eth1
default via 16.107.200.23 dev eth1
问题1.按照上述显示,使用 iproute 2009 版本我获得了持有 C 类或 B 类网络地址的 IPv4 A 类地址,反之亦然。这是一个有效的配置吗?
问题2。根据上面的显示,如果 iproute 允许添加多个默认路由,那么当数据包只需要使用一个默认路由(存在多个默认路由)进行路由时,数据包流的行为会是什么?iproute 如何过滤多个默认路由?此外,iproute 在服务器设置中允许多个默认路由是否是一个有效功能?
答案1
A1:是的,完全正确。有类 IP 寻址在 1993 年左右被取代跨域路由(无类域间路由)。即使没有 CIDR,这仍然有效,因为您只需定义“子网”。
A2:在大多数情况下,使用的“默认”路由将是路由表中列出的第一个路由。用(非常)简单的术语来说,内核会“向下”遍历路由表,直到找到匹配项并在匹配的链路上传输数据包。对于您来说,大多数“默认”流量将被发送到16.107.200.1
您的eth0
接口进行后续路由。