m标志和o标志将被存储在Linux中

我想知道最近收到的路由器广播的m标志和o标志的值。 从内核源代码我知道m标志和o标志被存储。

  /*
   * Remember the managed/otherconf flags from most recently
   * received RA message (RFC 2462) -- yoshfuji
  */
  in6_dev->if_flags = (in6_dev->if_flags & ~(IF_RA_MANAGED |
                          IF_RA_OTHERCONF)) |
                          (ra_msg->icmph.icmp6_addrconf_managed ?
                                   IF_RA_MANAGED : 0) |
                           (ra_msg->icmph.icmp6_addrconf_other ?
                                   IF_RA_OTHERCONF : 0);
  .
  .
  .

然后我相信它必须可以使用ioctl或proc文件系统或任何其他方法来检索这些值。 任何人都可以请指出这一点。


最后我找到了方法。 感谢Google,感谢Shirley Ma。 请从我的博客http://kumaran127.blogspot.jp/2013/05/get-m-and-o-flag-of-most-recently.html获取代码


我很肯定你不会在procfs中找到这个,但你可以使用radvdump分析这些数据包:请参阅http://www.tldp.org/HOWTO/Linux+IPv6-HOWTO/hints-daemons-radvd.html以及它是如何实现的参考:http://svn.dd-wrt.com/browser/src/router/radvd/radvdump.c?rev=11491 ..以下是他们如何在原始套接字上创建icmp6过滤器http:/ /svn.dd-wrt.com/browser/src/router/radvd/socket.c?rev=11491,然后用它来聆听。

干杯

链接地址: http://www.djcxy.com/p/71493.html

上一篇: Where m flag and o flag will be stored in Linux

下一篇: Cannot run load tests because Visual Studio opens them with an xml editor