Linuxでは、UDPポート転送が機能しません。

Linuxでは、UDPポート転送が機能しません。

ポート53のAPから9053をリッスンするカスタムDNSサーバーにUDPトラフィックを転送するために、ポート転送ルールを適用しようとしています。さまざまな通話を試しました。それらのどれも仕事がありません。カリーで食べましたが、以下では転送ルールを適用する前の出力を見つけることができます。

iptables -S; iptables -S -t nat

********* NAT *************
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 MASQUERADE  all  --  *      *       10.42.0.0/24        !10.42.0.0/24        
********* FILTER *************
Chain INPUT (policy ACCEPT 33 packets, 7260 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     udp  --  wlan0  *       0.0.0.0/0            0.0.0.0/0            udp dpt:67
    0     0 ACCEPT     tcp  --  wlan0  *       0.0.0.0/0            0.0.0.0/0            tcp dpt:67
    0     0 ACCEPT     udp  --  wlan0  *       0.0.0.0/0            0.0.0.0/0            udp dpt:53
    0     0 ACCEPT     tcp  --  wlan0  *       0.0.0.0/0            0.0.0.0/0            tcp dpt:53

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  *      wlan0   0.0.0.0/0            10.42.0.0/24         state RELATED,ESTABLISHED
    0     0 ACCEPT     all  --  wlan0  *       10.42.0.0/24         0.0.0.0/0           
    0     0 ACCEPT     all  --  wlan0  wlan0   0.0.0.0/0            0.0.0.0/0           
    0     0 REJECT     all  --  *      wlan0   0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable
    0     0 REJECT     all  --  wlan0  *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

以下は私が適用しようとしたルールですが、そのうち何も機能しませんでした。

sudo iptables -t nat -A PREROUTING -p udp -i wlan0 --dport 53 -j REDIRECT --to-ports 9053

しかし、9053はランダムなので持続してはいけません。

注:1. ip_forwardフラグが1に設定されている

  1. WiresharkはICMPエラー応答を返し、ポートに接続できず、ターゲットに接続できません。

  2. WiFi設定で共有接続機能を使用しました – IdanE

  3. Linuxでローカルで実行され、9053でリッスンするDNSサービスを設定しました。サービスは期待どおりに実行されます(nslookupを使用して直接通信します。

  4. 他のTCP転送ルールは、一緒に使用する他のサービスを探します。 UDPリダイレクトに関連しています。

関連情報