ドメイン文字列に基づいてDNSに使用されるIPアドレスを制御しようとしています。私はファイアウォール付きのFedoraを使用しており、次のコマンドを試しました。
firewall-cmd --direct --add-rule ipv4 filter PREROUTING 0 -t nat -p udp \
--dport 53 -m string --algo bm --hex-string '|06|<example>|03|<com>|' \
-j DNAT --to-destination a.b.c.d
正しい16進文字列と宛先IP値を使用していると確信しています。 natテーブルを一覧表示するとルールが表示されますが、tcpdumpは宛先IPのないトラフィックを表示します。 natは正しいテーブルですか、それともフィルタを使うべきですか?それとも何か違うものがありますか?
また、--permanentでマークされていないルールを消去する方法があるかどうかわかりません。再起動することもできますが、必要はないようです。