0

我们的 VoIP 突然出现故障,无法连接。我可以看到 UDP 5060 数据包通过以下线路进入路由器:

add rule ip filter FORWARD udp dport 5060 log prefix "=======> FORWARD 5060"

但是我没有找到记录输出的技巧,以确保数据包被发送到 ADSL 盒子。以下两行不时给出一个数据包(大约 1 比 100)。

add rule ip filter OUTPUT udp dport 5060 log prefix "~~~~~~~> OUTPUT  5060"
add rule ip nat POSTROUTING udp dport 5060 log prefix "++++++> POSTROUTING 5060"
add rule ip nat OUTPUT udp dport 5060 log prefix " ******> OUTPUT  5060"

我用 tcp 端口 80 进行了测试(互联网工作正常),这给出了相同的结果,所以这并不意味着 5060 数据包丢失,而只是日志写得不好。

我知道我可以使用 wireshark 或 tcpdump 来做到这一点,如这篇文章所示: 分析从我的计算机发出的数据包, 但在 nftables 内有一个连续的日志对我来说更容易

4

1 回答 1

1

虽然我仍然会对我的问题的答案感兴趣,但我补充说 tcpdump 确实是做我想做的事的好方法,而且它非常易于使用。

tcpdump -v -i -eth1 port 5060  (to see packets entering the router)
tcpdump -v -i -eth0 port 5060  (to see packets going out of the router)

只需添加 -v 即可查看数据包的全部内容。

使用 -w 记录到文件

一个漂亮的工具,非常容易使用。

于 2020-02-29T10:18:15.923 回答