ping-m选项有什么用?我读了平人的书页,但我不明白。在google之后,我看到使用了if-m选项,然后将SO-MARK选项添加到套接字中。那么,这个选项的用途是什么?我们应该什么时候使用它?
提前谢谢。

最佳答案

在Linux上,SO_MARK用于标记传出数据包:

   SO_MARK (since Linux 2.6.25)
          Set the mark for each packet sent through this socket (similar
          to the netfilter MARK target but socket-based).  Changing the
          mark can be used for mark-based routing without netfilter or
          for packet filtering.  Setting this option requires the
          CAP_NET_ADMIN capability.

所以如果你用这个选项ping:
$ping -m 10 <host>

然后可以使用<host>上的iptables对其进行过滤:
$iptables -A INPUT -m mark --mark 0xa -j ACCEPT

或者直接在代码中使用getsockopt()
它可以用于多种原因,例如路由决策或网络调试。

关于linux - 在ping中使用-m选项,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36856897/

10-12 06:10