この質問は前の質問に関連しています。
https://teratail.com/questions/211975
わからないこと
以下のiptablesで150.22.10.3宛のMARKされた(はず)のpacketがルーティングされません。
iptables
[root@host ~]# iptables -t mangle -L | grep MARK -B2 Chain FORWARD (policy ACCEPT 18274 packets, 6315K bytes) pkts bytes target prot opt in out source destination 5271 1151K MARK all -- * * 0.0.0.0/0 150.22.10.3 MARK set 0x100000 -- Chain OUTPUT (policy ACCEPT 100 packets, 9942 bytes) pkts bytes target prot opt in out source destination 0 0 MARK all -- * * 0.0.0.0/0 150.22.10.3 MARK set 0x100000 [root@host ~]# iptables -t filter -L | grep MARK -B2 [root@host ~]# iptables -t nat -L | grep MARK -B2 [root@host ~]# iptables -t raw -L | grep MARK -B2 [root@host ~]
ルーティング
[root@host ~]# ip rule show 0: from all lookup local 100: from all fwmark 0x100000/0x100000 lookup lan 32766: from all lookup main 32767: from all lookup default
[root@host ~]# ip r show table lan 150.22.10.3/32 dev eth1 scope link src 150.22.13.3
起きている問題
以上のルーティングでeth1にpacketを送るはずですが、実際にはdefault gatewayであるeth0からpacketが送出されます。
root@host ~]# tcpdump -ieth0 dst host 150.22.10.3 -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes 15:38:28.418688 IP 150.22.13.3.sun-sr-https > 150.22.10.3.48112: Flags [.], ack 4010106138, win 270, options [nop,nop,TS val 1732446 ecr 44156350], length 0
お聞きしたいこと
サーバーから150.22.10.3宛に送出されるpacketは全てMARKされているはずで、また他のMARKはなく競合もないので、ecmpテーブルのルーティングを参照するはずが、なぜそうならないのかお聞きしたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。