我是 Stack Exchange 的新手。我正在尝试:我使用以下命令从一台服务器抽取流量:tcpreplay -i ens3 ~/daniel/sipdump.pcap 来自服务器 1
我正在通过 tcpdump -i ens3 -nn 捕获服务器 2 中的流量,我想阻止所有默认使用 5060 作为源或目标的 SIP 流量。
但是 pcap 中的 ip 不是目标 ip:我的服务器 2 ip 不同(192.168.101.5)。当我抽取 pcap 时,ip 不同(源和目标)。
[root@serevr1]# tshark -r outbound_incoming1.pcap
1 0 172.16.130.119 -> 172.16.130.119 SIP/SDP 561 Request: INVITE sip:sandeep@com:5060 |
2 0 172.16.130.119 -> 172.16.130.119 SIP 358 Status: 100 OK |
3 0 172.16.130.119 -> 172.16.130.119 SIP 358 Status: 183 OK |
4 0 172.16.130.119 -> 172.16.130.119 SIP 439 Request: PRACK sip:sandeep@com:5060 |
5 0 172.16.130.119 -> 172.16.130.119 SIP 364 Status: 200 OK |
6 0 172.16.130.119 -> 172.16.130.119 SIP 364 Status: 180 OK |
7 3 172.16.130.119 -> 172.16.130.119 SIP/SDP 529 Status: 200 OK |
8 3 172.16.130.119 -> 172.16.130.119 SIP 398 Request: ACK sip:sandeep@com:5060 |
9 6 172.16.130.119 -> 172.16.130.119 SIP 385 Request: BYE sip:kapil@com:5060 |
10 6 172.16.130.119 -> 172.16.130.119 SIP 346 Status: 200 OK |
我想丢弃/接受 sip 流量,即 iptables 中的 udp 数据包,但我无法这样做。
请帮助我做到这一点。
答案1
尝试使用tcpreplay-编辑修改目标 MAC 和目标 IP 以匹配目标服务器。或者您可以使用tcprewrite(也是 Tcpreplay 套件的一部分)来修改 PCAP 文件的目标 MAC/IP。无论哪种方式,您的服务器都会拒绝任何其他流量(广播数据包除外)。
请注意,如果目标是 TCP 应用程序,仅更改 MAC 和 IP 地址是不够的。在 TCP 握手期间,客户端和服务器会协商随机序列号,因此仅推送 PCAP 文件是不够的。在这些情况下,您可以使用直播播放,但这需要一个非常特制的 PCAP 文件。