ルールは
-A KUBE-SEP-G3HEJMIUHDVUA2GR -p udp -m comment --comment "kube-system/kube-dns:dns" -m udp -j DNAT --to-destination :0 --persistent --to-destination :0 --persistent --to-destination
これはkubeサービスルールの一部です。
-N KUBE-SEP-G3HEJMIUHDVUA2GR
-A KUBE-SEP-G3HEJMIUHDVUA2GR -s 10.233.64.2/32 -m comment --comment "kube-system/kube-dns:dns" -j KUBE-MARK-MASQ
-A KUBE-SEP-G3HEJMIUHDVUA2GR -p udp -m comment --comment "kube-system/kube-dns:dns" -m udp -j DNAT --to-destination :0 --persistent --to-destination :0 --persistent --to-destination
私が知る限り、一般的にこの規則は次のような特定のターゲットを持ちます。
-A KUBE-SEP-XEZU3EBQ2WW4MLUB -p tcp -m comment --comment "default/nginx:https" -m tcp -j DNAT --to-destination 10.233.116.87:443
まず、特定のターゲットはありませんが、サービスにエンドポイントが1つしかないためですが、次のことを知りたいです。
- 宛先 ":0" とはどういう意味ですか?
- 「--destination」が3回表示されるのはなぜですか?
- ここで「--持続」の用途は何ですか?
- DNAT標的に関するより詳細な文書はどこにありますか?
ベストアンサー1
これはまったく答えではありません。さらなる調査は、kube-proxyコンテナのiptablesルールがホストのiptablesルールと異なることを発見しました。
-N KUBE-SEP-OYL6BTTAC4W4HXLZ
-A KUBE-SEP-OYL6BTTAC4W4HXLZ -s 10.233.64.38/32 -m comment --comment "kube-system/kube-dns:dns" -j KUBE-MARK-MASQ
-A KUBE-SEP-OYL6BTTAC4W4HXLZ -p udp -m comment --comment "kube-system/kube-dns:dns" -m udp -j DNAT --to-destination :0 --persistent --to-destination :0 --persistent --to-destination
(コンピュータを再起動したため、名前とIPが変更されました)
その後、2つのiptables cliのバージョンを確認したところ、一致しないことがわかりました。以前にカーネルをアップグレードしたところ、いくつかの問題が発生した可能性があります。しかし、私はあまり深く掘り下げたくありません。私はカーネルの専門家ではありません。