静态的是: route add -net (目标网段) netmask (网段掩码) gw (下一跳地址,也就是网关)
动态的话要安装zebra
获取MAC和netlink没有关系.一开始arp表是空的. 假如一台linux主机(假设为192.168.0.3)要ping一个外网的ip, 通过路由表可知这个数据包要到达的下一跳网关ip, 假设为192.168.0.1. 那么, 这台linux主机就广播一个arp请求:"who has 192.168.0.1? tell 192.168.0.3". 网关接收到这个arp请求后, 回应一个arp包给这台Linux主机:"192.168.0.1 is at xx.xx.xx.xx(MAC)", 这样, 这台Linux主机就获得了下一跳的网关了, 它会把这个arp信息缓存到arp表. 它不需要知道外网ip对应的MAC, 只把这个ping的ICMP数据包发给网关. 同样, 这个网关也根据路由表查找下一跳的MAC.
linux系统下路由的 *** 作:
查看路由表:
route -n/ip route
添加路由:
route add -host 1.1.1.1/32 gw 172.18.30.45
route add -host 主机ip地址 gw 下一跳[ip或设备]
route add -net 10.20.20.0/24 dev eth0
route add -net 网段 gw 下一跳[ip或设备]
删除路由:
route del -net 10.20.20.0/24 【删除网段路由】
route del -host 1.1.1.1 【删除主机路由】
默认网关:
route add default gw 172.18.30.204
route del default gw 172.18.30.204
具体 *** 作:
[root@test1 ~]# ip route
10.10.10.10 via 172.18.30.1 dev eth0
172.18.30.0/24 dev eth0 proto kernel scope link src 172.18.30.45
192.168.122.0/24 dev virbr0 proto kernel scope link src 192.168.122.1
169.254.0.0/16 dev eth0 scope link metric 1002
default via 172.18.30.254 dev eth0 proto static
[root@test1 ~]# route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
bogon bogon 255.255.255.255 UGH 0 0 0 eth0
172.18.30.0 * 255.255.255.0 U 0 0 0 eth0
192.168.122.0 * 255.255.255.0 U 0 0 0 virbr0
link-local * 255.255.0.0 U 1002 0 0 eth0
default bogon 0.0.0.0 UG 0 0 0 eth0
[root@test1 ~]#
[root@test1 ~]# route add -host 1.1.1.1/32 gw 172.18.30.45
[root@test1 ~]# route add -net 10.20.20.0/24 dev eth0
[root@test1 ~]# route del -net 10.20.20.0/24
[root@test1 ~]# route del -host 1.1.1.1
[root@test1 ~]# route add default gw 172.18.30.204
[root@test1 ~]# route del default gw 172.18.30.204
更多linux知识建议参考《Linux就该这样学》,linux的学习需要多巧多练习,加油吧
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)