修复内核丢弃来自外部网络的数据包
Fix the kernel dropping packet coming from an external network
我有以下配置:
我有一个 machine(我称它为 1)有两个接口,eth0 是外部接口,拥有一个关联的 IP 地址,比方说网络 A,eth1 没有'使用 pcap 在网络 B 中没有 IP 地址和嗅探数据包。我的问题是我想将数据包从 eth0 发送到网络 B 内的 machine(假设为 2)。
为此,我在 1 中添加了一个路由条目,其中包含到达 2 (eth1) 的接口、2 的 IP 和 GW。
执行此操作后,使用 wireshark 我可以在 2 中看到 UDP 数据包,但看起来内核没有将数据包转发给应用程序。我检查了字段,dest mac、port 和 dest Ip 是正确的,源 ip 和 mach 是来自 eth0 的,这也是正确的,因为 eth1 没有 IP。没有防火墙或 iptables 规则(一切都是默认设置),欺骗检查被禁用,在 iptables 输入中我可以看到每次数据包之一到达 2 时计数器都会增加。
其他信息:两个mac臀部都是ubuntu14.02
我们软件的一项功能破坏了通信。一般在没有不规范的iptables规则或者防火墙的情况下,加一个arp表项就可以解决这种问题了。
我有以下配置:
我有一个 machine(我称它为 1)有两个接口,eth0 是外部接口,拥有一个关联的 IP 地址,比方说网络 A,eth1 没有'使用 pcap 在网络 B 中没有 IP 地址和嗅探数据包。我的问题是我想将数据包从 eth0 发送到网络 B 内的 machine(假设为 2)。
为此,我在 1 中添加了一个路由条目,其中包含到达 2 (eth1) 的接口、2 的 IP 和 GW。
执行此操作后,使用 wireshark 我可以在 2 中看到 UDP 数据包,但看起来内核没有将数据包转发给应用程序。我检查了字段,dest mac、port 和 dest Ip 是正确的,源 ip 和 mach 是来自 eth0 的,这也是正确的,因为 eth1 没有 IP。没有防火墙或 iptables 规则(一切都是默认设置),欺骗检查被禁用,在 iptables 输入中我可以看到每次数据包之一到达 2 时计数器都会增加。
其他信息:两个mac臀部都是ubuntu14.02
我们软件的一项功能破坏了通信。一般在没有不规范的iptables规则或者防火墙的情况下,加一个arp表项就可以解决这种问题了。