做域名代理网站,厦门自助网站建设报价,正规app开发报价,河北建设信息平台网站1 ip route和route -n的区别 ip route 和 route -n 都是用于查看和管理Linux系统路由表的命令。但下面是它们的区别#xff1a; ip route#xff1a;是Linux系统中的现代工具#xff0c;它属于iproute2套件#xff1b;它提供了更多的选项#xff0c;可以更精确地控制路由表…1 ip route和route -n的区别 ip route 和 route -n 都是用于查看和管理Linux系统路由表的命令。但下面是它们的区别 ip route是Linux系统中的现代工具它属于iproute2套件它提供了更多的选项可以更精确地控制路由表的管理。route -n是传统的路由管理工具它属于net-tools套件它通常用于旧版的Linux系统它的功能相对较少选项也较为有限。 1.1 ip route的用法
[rootmaster-01 home]# ip route
default via 192.168.217.2 dev ens33
10.3.1.0/24 via 10.3.1.0 dev flannel.1 onlink
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 【常用参数】解释 default代表该条路由为默认路由via ADDRESS下一跳地址默认路由是指当系统无法匹配其他路由时将数据包发送到指定的下一跳地址。 dev NAME输出的设备名称。src ADDRESS指定数据包的源 IP 地址。metric跳数该条路由记录的质量一般情况下如果有多条到达相同目的地的路由记录路由器会采用metric值小的那条路由。 【不常用参数】解释 proto路由协议标识符指示此路由的路由协议类型kernel表示该路由是由内核在自动配置期间安装的proto kernel 的意思是指这个路由项是在自动配置阶段由kernel创建的。 scope指示路由表条目所覆盖的目的地范围link表示在设备的网络段内可以通过此链接进行通信scope link 的意思是 172.17.0.0/16 这个子网内的目标ip仅仅在 docker0 这个接口上有效。 onlink是Linux路由表中的一个参数表示路由应该“假装下一跳直接连接到这个链路即使它不匹配任何接口前缀”。这意味着路由器会假设下一跳地址是直接连接的即使它实际上并不是。这通常用于特殊的网络配置例如在某些隧道设置中。onlink参数通常用于在路由表中创建虚拟路由。 第一行 default via 192.168.217.2 dev ens33 此条路由为默认路由也就是任何无路由报文都通过ens33 经由默认网关192.168.217.2 来转发。 第二行 10.3.1.0/24 via 10.3.1.0 dev flannel.1 onlink 首先从该条路由可以表明Flannel正在使用VXLAN或类似的技术来实现覆盖网络这条路由的意思是目的地址10.3.1.0/24通过flannel.1设备上的10.3.1.0进行路由。onlink选项表示该路由表项指定的目的地址是直接连接的不需要经过网关。 第三行 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 172.17.0.0/16这是目的地表示所有目的IP地址在192.168.1.0到192.168.1.255之间的数据包。dev eth0这表示数据包将通过名为eth0的网络接口发送和接收。proto kernel这表示这个路由是由内核自动添加的。scope link这表示该路由仅对本地链路或直接连接的网络有效而不可在公共互联网上路由。src 172.17.0.1这指定了发送数据包时要使用的源IP地址。 因此这个路由表条目告诉系统将目的IP地址在172.17.0.0/16范围内的数据包发送到名为docker0的网络接口并使用源IP地址172.17.0.1。 1.2 route -n的用法
[rootmaster-01 home]# ip route
default via 192.168.217.2 dev ens33
10.3.0.0/24 dev cni0 proto kernel scope link src 10.3.0.1
10.3.1.0/24 via 10.3.1.0 dev flannel.1 onlink
169.254.0.0/16 dev ens33 scope link metric 1002
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1
192.168.217.0/24 dev ens33 proto kernel scope link src 192.168.217.129
[rootmaster-01 home]#
[rootmaster-01 home]#
[rootmaster-01 home]#
[rootmaster-01 home]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.217.2 0.0.0.0 UG 0 0 0 ens33
10.3.0.0 0.0.0.0 255.255.255.0 U 0 0 0 cni0
10.3.1.0 10.3.1.0 255.255.255.0 UG 0 0 0 flannel.1
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 ens33
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
192.168.217.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33 参数解释 Destination目的网段0.0.0.0 表示匹配任意网段。Genmask子网掩码Gateway默认网关0.0.0.0 表示无网关即与本地IP同一网段。Flags标志位U - Up表示有效 G - Gateway表示链接路由若无这个字段表示直连目的地址(本机)Metrics跳数Iface出口网卡如果不属于本网段那么通过Iface端口发送到Gateway地址 第一行的意思就是去往所有目标地址数据包由网关 192.168.217.2 通过网卡ens33来转发Flags那一列中有G时才会使用Gateway。 2 iproute2 对决 net-tools 如今很多系统管理员依然通过组合使用诸如ifconfig、route、arp和netstat等命令行工具统称为net-tools来配置网络功能解决网络故障。net-tools起源于BSD的TCP/IP工具箱后来成为老版本Linux内核中配置网络功能的工具。但自2001年起Linux社区已经对其停止维护。同时一些Linux发行版比如Arch Linux和CentOS/RHEL 7则已经完全抛弃了net-tools只支持iproute2。 如果你仍在使用net-tools而且尤其需要跟上新版Linux内核中的最新最重要的网络特性的话那么是时候转到iproute2的阵营了。原因就在于使用iproute2可以做很多net-tools无法做到的事情。 对于那些想要转到使用iproute2的用户有必要了解下面有关net-tools和iproute2的众多对比。