iptables が NAT およびポート転送として設定されている場合、VLAN ネットワークで iptables 接続が拒否されます。

iptables が NAT およびポート転送として設定されている場合、VLAN ネットワークで iptables 接続が拒否されます。

固定IP XXXXがあります。 iptablesを使用してLinuxサーバーをルーターとして構成しました。下の図は私のネットワークトポロジを示しています。

            ppp0  +-------------+
       +----------+             |
        static IP |   Router    |
                  |             |
                  +---+---------+
                      |
                 +----+------+
            +----+  switch   +-----+
            |    +-----------|     |
            |VLAN 1.0/24-10.0/24   |
            |                      |
  XXXXXXXXXXvX                     |
 XX          XXXXX       +------v--v--+
XX               XX      |            |
X   LAN network   XX     | Web server |
X                  X     |            |
XX 192.168.2.0/24  X     +------------+
 XX              XXX        192.168.1.5
   XXXX      XXXXX
      XXXXXXXX

私のルータはすべてのVLANネットワークのためのNATルータとして設定されます。 DNATを介してインターネットからアクセスできるWebサーバーに正常に公開しました。 LAN ネットワーク上のコンピュータはpingWeb サーバーに正常に接続され、192.168.1.5 に接続されます。

ネットワーク2.0/24のコンピュータが静的IPを介してWebサーバーにアクセスすると、説明できない接続拒否エラーが発生します。

私のiptablesルールは次のとおりです。

$IPT -t nat -A PREROUTING -i ppp0 -p tcp -j DNAT --to-destination 192.168.1.5:80
$IPT -A FORWARD -i ppp0 -o eth4 -p tcp -j ACCEPT

答え1

/ 24ネットワーク上のパケットはppp0インターフェイスを介して入らないため、表示されたルールは適用されず、実際にルータのポート80にアクセスしようとします。ルータにポート80が開いていると、他のルールやポリシーによって接続が拒否されることがあります。

関連情報