自宅の一部のLANコンピューターにWake-on-Lanをセットアップしようとしていますが、UDPポート(7または9が最も一般的)を開いて、すべての要求をブロードキャストIPに転送する必要があるようです。私の場合は192.168.1.255です。
問題は、ルーターがブロードキャストIPに何も転送できないことです。
Telnet経由でルーターに接続でき、このルーターはIPTABLESを使用しているようですが、その方法や方法についてはよくわかりません。
誰かが私がやりたいことをするための適切なiptablesコマンドで私を助けてくれますか?また、それが機能しない場合は、すべてを元に戻すコマンドもいいでしょう。
最後に、ルーターを再起動すると、手動で追加されたiptablesエントリが保持されますか、それとも毎回実行する必要がありますか?
このStackExchangeトピックで言及されているツールsocat
を使用した優れたソリューションがあります。
私はこのトピックの専門家ではないので、詳しく説明することはできません。引用することしかできません。このソリューションは私にとってはうまくいきました。
Red Tux ( https://serverfault.com/a/267343/323199 )で言及されている解決策は機能せず、iptables
はパケットをブロードキャストします。これは、前述のStackExchangeトピックで説明されています。
# iptables -A PREROUTING -t nat -p udp --dport 6 -d <original destination> -j DNAT --to-destination 192.168.1.255
これにより、宛先のWOLパケットが取得され、ネットワークのブロードキャストに再ルーティングされます。
また、Red Hat派生システムを使用している場合は、を使用してiptablesエントリを保存する必要があります。
# service iptables save
一部のルータ(Cisco)は、ダイレクトUDPブロードキャストを転送できます。
バージョン5.0頃以降のLinuxカーネルはこれを行うことができます。特定のネットワークインターフェイスのパラメータを指定する必要があります。
Sudo sysctl -w net.ipv4.conf.eth1.bc_forwarding=1
(注:オプションnet.ipv4.conf .all。bc_forwardingが機能しないようです)
このパラメータをint/etc/sysctl.confに保存できます