首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ARP通量如何解决

ARP通量如何解决
EN

Ask Ubuntu用户
提问于 2015-01-27 00:39:23
回答 2查看 4.4K关注 0票数 3

我有一个具有两个NIC的服务器,在同一个子网中有一个IP地址,这就是我的/etc/network/接口的样子:

代码语言:javascript
复制
auto eth0
iface eth0 inet static
  address 192.168.2.155
  gateway 192.168.2.51
  netmask 255.255.255.0
  dns-nameservers 192.168.2.180
  dns-domain exaple.com

auto eth1
iface eth1 inet static
  address 192.168.2.156
  netmask 255.255.255.0

因此,eth0与ip 192.168.2.155是与互联网连接的“管理”接口。IP 192.168.2.156的eth1网卡将用于与内部设备通信。

现在,当我用默认系统配置这个包,并尝试在192.168.2.156上使用局域网上的其他设备来平eth1时,eth1并没有像人们所期望的那样接收这些数据包,但是通过eth0,我通过运行tcpdump -i eth1 icmp验证了这一点,并且看不到任何数据包进入。执行ping操作的客户端正在收到答复,但来自错误的NIC/MAC地址。

现在我发现这个现象被称为'ARP通量‘,甚至有一些很好的文章描述了如何解决这个问题,问题是,这些解决方案似乎都不适合我。通过运行以下命令,这篇文章似乎给出了最好的解释和修复:

代码语言:javascript
复制
sudo sysctl -w net.ipv4.conf.all.arp_announce=1
sudo sysctl -w net.ipv4.conf.all.arp_ignore=2
sudo sysctl -w net.ipv4.conf.all.rp_filter=0

这似乎起到了一些作用,因为我开始在eth1上接收数据包,但它完全禁用了eth0和IP地址192.168.2.155上的任何通信。

关于我能尝试些什么还有什么其他的想法吗?

EN

回答 2

Ask Ubuntu用户

发布于 2015-01-27 11:20:04

根据这篇文章更改为:

代码语言:javascript
复制
sysctl -w net.ipv4.conf.all.arp_ignore=1
sysctl -w net.ipv4.conf.all.arp_announce=2
sysctl -w net.ipv4.conf.all.arp_filter=1
票数 0
EN

Ask Ubuntu用户

发布于 2016-01-20 17:35:43

基于这个职位这个职位,你试过吗?:

代码语言:javascript
复制
net.ipv4.conf.default.rp_filter = 2

你修好了吗?

编辑:我的意思是。一切:

代码语言:javascript
复制
sudo sysctl -w net.ipv4.conf.all.arp_announce=1
sudo sysctl -w net.ipv4.conf.all.arp_ignore=2
sudo sysctl -w net.ipv4.conf.all.rp_filter=2
票数 0
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/578210

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档