開発中のアプリケーションに対していくつかのテストを行っていますが、次のことができるはずです。何も言わずに可能なエラーモードを複製するために、短い時間に出てくるUDPパケットをドロップします。
これを行う方法はありますか?
メモ:iptables
DROP
送信されたメッセージについて沈黙しません!send()
通話が切れた場合、または同様の場合は、奇妙な理由でiptables
電話が返されます(参照EPERM
ここ。残念ながら、目的地は1ホップの距離にあるため、この回答は使用できません。
xtables-addons
使用されるSTEAL
動詞があります。しかし、数年前に削除され、理由が見つかりません。
これで、ルートテーブルで偽のルートを試してみましたが、残念ながらこの方法は機能しないようです。両方通信トラフィックの方向。
私がしなければならないテストのために、私は持つ許可する記入UDP トラフィックは、偽のパスをインストールした後に送信元からパケットを送信しているにもかかわらず、着信パケット ストリーミングはすぐに停止しました。
ベストアンサー1
仮想インターフェイスを追加し、そのインターフェイスへのパスを設定するにはどうですか?
# ip link add dummy0 type dummy
# ip link set dev dummy0 up
# ip route add 8.8.8.8/32 dev dummy0
# ping -c3 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2015ms
常にパケットをすべての(ネイバーまたはリモート)アドレスのアップストリームに送信しますdummy0
。
# tshark -i dummy0
Running as user "root" and group "root". This could be dangerous.
Capturing on 'dummy0'
1 0.000000 10.10.0.59 -> 8.8.8.8 ICMP 98 Echo (ping) request id=0x1ce0, seq=1/256, ttl=64
2 1.007348 10.10.0.59 -> 8.8.8.8 ICMP 98 Echo (ping) request id=0x1ce0, seq=2/512, ttl=64
3 2.015394 10.10.0.59 -> 8.8.8.8 ICMP 98 Echo (ping) request id=0x1ce0, seq=3/768, ttl=64