请问这样的配置下ping包可以被oai0的ndo_start_xmit函数处理到吗?

新手上路,请多包涵

情况是这样的,在服务器A上面起了一个device:

oai0 Link encap:AMPR NET/ROM HWaddr

      inet addr:10.0.1.1  Bcast:10.0.1.255  Mask:255.255.255.0
      UP BROADCAST RUNNING NOARP MULTICAST  MTU:1500  Metric:1
      RX packets:0 errors:0 dropped:0 overruns:0 frame:0
      TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
      collisions:0 txqueuelen:100 
      RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

这是路由:
10.0.1.0/24 dev oai0 proto kernel scope link src 10.0.1.1

它的ndo_start_xmit函数会通过把传入的数据包转发到用户进程。

事实上我在A上ping10.0.1.2也确实看到了ndo_start_xmit在处理的日志。

但是在与A相连的服务器B上,我加上了一条路由:
10.0.1.0/24 via (A的IP) dev eth0
然后在B上ping 10.0.1.2,我的设想是这个ping包也会被oai0的ndo_start_xmit函数处理,然而好像没有。

我在A上与B连接的接口上抓包,显示ping包确实来到了A,但是为什么没有被转发给oai0呢?

对linux内核我是小白一个...希望得到大家的帮助,谢谢!

阅读 2.1k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进