当网卡收到的包的目的地址是主机上另一个网卡的地址.arp总结
2018-02-14 01:49
393 查看
内核中是如何确定arp_ignore和rp_filter的值的?
然后呢
落实到文档中就是:
代码与文档匹配:
所以在做关于arp的试验之前,要先把机器上的/proc/sys/net/ipv4/conf/all/rp_filter和/proc/sys/net/ipv4/conf/all/arp_ignore都设置成0,这样你对待试验网卡的设置才会生效的。
都设置成0后,开始首先进行arp_ignore的试验:
1)arp_ignore = 0; 主要arp包中的目的地址是本地某一个网卡的地址,返回应答包;
2)arp_ignore = 1; arp包中的目的地址是必须是该网卡,否则丢包;【这里注意要有rp_filter要设置成0,会进行反向路由检查】
3)arp_ignore = 2; arp包中的目的地址必须是本网卡,并且来源IP必须与该网卡是一个网段,否则丢包;
借助软件wireshark;
然后把arp_ignore设置成0之后,试验rp_filter
1) rp_filter = 0; 不做反向路由的检查
2) rp_filter = 1; 进行反向路由的检查,并且检查结果一定是该IP地址从该接受网卡出,否则丢包;
3) rp_filter = 2; 进行反向路由的检查,没那么严格,只要是本机器能路由出去就得!
所有的设置均符合预期。
#define IN_DEV_RPFILTER(in_dev) IN_DEV_MAXCONF((in_dev), RP_FILTER) #define IN_DEV_ARP_IGNORE(in_dev) IN_DEV_MAXCONF((in_dev), ARP_IGNORE)
然后呢
#define IN_DEV_MAXCONF(in_dev, attr) \ (max(IPV4_DEVCONF_ALL(dev_net(in_dev->dev), attr), \ IN_DEV_CONF_GET((in_dev), attr)))
落实到文档中就是:
The max value from conf/{all,interface}/arp_ignore is used when ARP request is received on the {interface}
代码与文档匹配:
所以在做关于arp的试验之前,要先把机器上的/proc/sys/net/ipv4/conf/all/rp_filter和/proc/sys/net/ipv4/conf/all/arp_ignore都设置成0,这样你对待试验网卡的设置才会生效的。
都设置成0后,开始首先进行arp_ignore的试验:
1)arp_ignore = 0; 主要arp包中的目的地址是本地某一个网卡的地址,返回应答包;
2)arp_ignore = 1; arp包中的目的地址是必须是该网卡,否则丢包;【这里注意要有rp_filter要设置成0,会进行反向路由检查】
3)arp_ignore = 2; arp包中的目的地址必须是本网卡,并且来源IP必须与该网卡是一个网段,否则丢包;
借助软件wireshark;
然后把arp_ignore设置成0之后,试验rp_filter
1) rp_filter = 0; 不做反向路由的检查
2) rp_filter = 1; 进行反向路由的检查,并且检查结果一定是该IP地址从该接受网卡出,否则丢包;
3) rp_filter = 2; 进行反向路由的检查,没那么严格,只要是本机器能路由出去就得!
所有的设置均符合预期。
相关文章推荐
- 当网卡收到一个包的目的地址是本主机其他接口的IP时.2
- 当网卡收到一个包的目的地址不是自己的地址时
- IP地址与子网掩码总结,网络号、主机号、网络地址、主机地址实例分析
- stm32F103 模拟I2C mpu6050收到数据全为0,或者地址为209,104,0x68,0xD0的一些解决办法总结
- 网络中是通过硬件地址找到目的主机的,那为什么还要有IP地址呢?
- 知道IP地址如何查看主机名和MAC(网卡)地址
- 主机网卡发现所发送数据的目的IP和默认网关不在同一网段(网络)时,会丢弃该数据帧吗???
- Shell脚本自动修改Linux网卡地址、IP地址配置、主机名修改
- java取主机的网卡物理地址
- aliyun,gdy云主机单双网卡/双IP/单双网关,同时上内外网新方案和总结
- Mac OS X 下修改网卡地址和抵御 ARP 攻击
- Arp工作原理及欺骗原理 局域网的网络流通不是根据IP地址进行,而是根据MAC地址进行传输。 当主机A要和主机B通信时,这时候假定A,B刚开机,或者ARP缓存表是空的。既然谈到通信,那么一般来说,
- 嵌入式 获取指定网卡在路由表中的网关以及源地址和目的地址
- 知道IP地址如何查看主机名和MAC(网卡)地址
- virtualbox虚拟机(Ubuntu16.04)在网络设置有NAT和only主机两块网卡时,安装ssh显示无法解析地址的问题解决
- 编写arp脚本抓取对应主机mac地址
- Unity小技巧——获取当前主机网卡的mac地址
- inux网卡与MAC地址绑定方法总结
- 让双网卡根据目的地址数据分流
- 多网卡时如何使用源地址ping目的地址,检测网络连通性