【发布时间】:2014-01-14 20:36:07
【问题描述】:
在 Linux 系统上运行,从另一个计算机地址获取 UDP 数据包,比如说 192.168.0.2 从另一个地址,比如说 192.168.166.66,我可以看到 tcpdump 进来的 UDP 数据包。但是,如果我使用 netcat,我实际上不会收到数据包。
如果我在 192.168.166.XXX 网络上创建一个接口,那么 netcat 可以接收数据包没有问题。
我缺少什么基本的网络概念?当我可以通过 tcpdump 看到它们正在正确传递时,为什么我需要在发送 IP 的网络上拥有一个接口?
【问题讨论】:
-
源主机和目的主机之间是否有正确的路由?我假设
0.2知道如何路由到166.66,因为你说你可以看到数据包进来;你确定返回的流量被正确路由到0.2吗?主机之间的简单 ping 流量是否按预期工作? -
admdrew,ping 不起作用,因为接收器 (192.168.0.2) 在 192.168.166.XXX 网络上没有接口。但是使用 tcpdump 我可以验证数据包是否正在到达接口,只是在那一点被丢弃。
标签: networking udp ip