静态路由使用下一跳IP与出接口的区别

配置下一跳为出接口的

好处是不用知道下一跳具体ip可以实现动态学习的效果

缺点在于下一跳路由器必须支持这种基本的arp代理功能.

拓扑图:
以太网链路中:两个接口之间的通信是靠MAC地址,根据MAC地址,将数据封装成数据帧后传送到网络,进而通过物理线路传送给对方。而获取到对端的MAC地址,是通过ARP来完成的。
例:1,当静态路由中下一跳使用出接口时,路由器会认为目标网络和接口处在“直连网络”中。如:R1(config)#ip route 192.168.2.0 255.255.255.0f0/0查看路由表:R1#show ip route 
在以太网直连网络中设备间的通信是靠ARP广播来获取到目标主机的MAC地址。即当R1要访问192.168.2.2这个ip地址时,R1会认为目标网络是和自己直连的(虽然这时候实际是静态路由),于是R1就要在F0/0口向网络发出ARP请求广播,来寻找192.168.2.2所对应的MAC地址。
这时,如果R2启用了ARP代理,那么R2将代替R3应答此ARP请求,即R2告诉R1:192.168.2.2所对应的MAC地址是R2的F0/0接口的MAC。如果R2的ARP代理功能关闭,那么R1将不能ping通192.168.2.2
使用出接口的弊端:如果R3后面接了些pc机,当R1要访问这些pc机时,都会产生一条该pc机和MAC地址对应的ARP条目缓存,如果pc机的数量很大,此缓存也会很大,会导致R1耗费很大内存来维护。
2,当静态路由中下一跳使用ip地址时,路由表中显示的是下一跳地址。如:R1(config)#ip route 192.168.2.0 255.255.255.0 192.168.1.2查看路由表:R1#show ip route 
这时去往192.168.2.2的网段只会维护一条ARP缓存,即192.168.1.2所对一个的是R2的F0/0接口地址。即使R3后面接了多台主机,也只需要维护这么一条ARP缓存记录。
二:点到点网络环境下:无论是指定下一跳地址还是出接口,都是一样的。因为这种环境下使用HDLC和PPP等协议来进行二层封装,不需要进行ARP的解析。
结论:1、在点到点网络环境下,无论是指定下一跳地址还是出接口,都是一样的2、在广播网络环境下,则不然。如果指定为出接口的话,那么不管数据包的目标地址是否有效,每次当数据包到达时都会触发一个ARP请求,又因为ARP代理功能在IOS环境下默认是打开的,这就意味着路由器需要配置大量的ARP高速缓存。而如果是指定为下一跳地址的话,仅当第一个去往目标网络的数据包到达时,才会触发ARP请求。
本文出自 “天好” 博客,请务必保留此出处http://tianhaoblog.blog.51cto.com/6467511/1280163


静态路由使用下一跳IP与出接口的区别
https://dnsnat.gitee.io/NETWORK/静态路由使用下一跳IP与出接口的区别.html
作者
dnsnat
发布于
2022年3月22日
许可协议