この質問は回答とコメントに関連しています。カーネルIP転送とは何ですか?
@LawrenceC経由
投稿1:
したがって、上記の例では、NIC 2にインターネット接続がある場合は、NIC 2をデフォルトパスに設定でき、NIC 1からの着信が192.168.2.0/24に属していないすべてのトラフィックはNIC 2を通過します。
そしてポスト2:
インターネット接続インターフェイス(上記のNIC 1)では、これを行うには、オンチェーンiptablesのPOSTROUTINGにMASQUERADEルールが必要です。バラより revsys.com/writings/quicktips/nat.html
存在するhttp://www.revsys.com/writings/quicktips/nat.htmlそれは言う:
次に、/dev/eth1の内部ネットワークから/dev/eth0の外部ネットワークにパケットを転送するようにiptablesを設定する必要があります。
/sbin/iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE /sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT /sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
なぜ使用すべきですかFORWARD
?ポスト2) 設定のみで配信が行われた場合ip_forward
(次のとおり)投稿1):
echo 1 > /proc/sys/net/ipv4/ip_forward
ベストアンサー1
ip_forward
許可されたパケット転送設定一般的に言えば。iptables
セキュリティ上の理由から、一部のLinuxディストリビューションでは、パケットがip_forward
正しく設定されていない場合などの転送を許可しないことがあります。
/sbin/iptables -A FORWARD -i eth0 -o eth1 -m state --state RELATED,ESTABLISHED -j ACCEPT
確立された接続または同様の関連パケットeth0
に対する応答のパケットを許可するルールを設定します。eth1
/sbin/iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
eth1
からのパケットを許可する明示的な規則を設定しますeth0
。
これにより、クライアントはデフォルト設定に関係なく、eth1
背後にあるサーバーにアクセスできます。eth0
iptables