IPv6 プレフィックスが動的な場合、ホストとポートへの着信 IPv6 トラフィックを許可しますか?

IPv6 プレフィックスが動的な場合、ホストとポートへの着信 IPv6 トラフィックを許可しますか?

IPv4 では、ホストに LAN 上の静的ローカル IP アドレスを割り当て、ファイアウォール/ルーターのファイアウォール ルールを使用して、ネットワークで使用される (動的な場合もある) インターネット接続 IP のポートを特定のホストのポートに転送し、ファイアウォール ルールでホストを識別する安定した方法としてホストの静的 LAN IPv4 アドレスを使用することができました。

しかし、IPv6 では、すべてのホストが実際にルーティング可能なインターネット IP を使用しているため、ホストへの着信トラフィックはすでにそのホストにアドレス指定されており、NAT は必要ありません。ただし、特定のホストとポートへの着信トラフィックを許可し、他のホストまたはポートへのトラフィックをブロックするようにファイアウォール ルールを記述できる必要があります。

しかし、ネットワークが IPv6 アドレスを割り当てるプレフィックスが動的である場合、ファイアウォール ルールで特定のホストを参照してそのホストへのトラフィックを許可するにはどうすればよいでしょうか。 ISP がネットワークに別のプレフィックスを割り当てているため、来週にはプレフィックスが異なる IPv6 アドレスになるため、その IPv6 アドレスへのトラフィックを単に許可することはできません。

では、実際にファイアウォールを設定して、そのホストのポートへの着信トラフィックを許可するにはどうすればよいでしょうか。宛先で一致させるオプションip6tablesがあるようです--destが、アドレス全体を入力できるだけで、たとえば、ホストに対して静的に保持できるアドレスのサフィックスを入力することはできないようです。man ページから:

       [!] -s, --source address[/mask][,...]
              Source  specification.  Address can be either a network name, a
              hostname, a network IP address (with /mask), or a plain IP  ad‐
              dress. Hostnames will be resolved once only, before the rule is
              submitted to the kernel.  Please note that specifying any  name
              to  be resolved with a remote query such as DNS is a really bad
              idea.  The mask can be either an ipv4 network mask  (for  ipta‐
              bles)  or  a  plain number, specifying the number of 1's at the
              left side of the network mask.  Thus, an iptables mask of 24 is
              equivalent to 255.255.255.0.  A "!" argument before the address
              specification inverts the sense of the address. The flag  --src
              is  an alias for this option.  Multiple addresses can be speci‐
              fied, but this will expand to multiple rules (when adding  with
              -A), or will cause multiple rules to be deleted (with -D).

       [!] -d, --destination address[/mask][,...]
              Destination  specification.   See  the  description  of  the -s
              (source) flag for a detailed description of  the  syntax.   The
              flag --dst is an alias for this option.

これを で処理する方法はありますかip6tables?ip6tablesネットワークの番号が変更されると、実際に全員が使用しているルールを生成する別のレイヤーはありますか? ネットワークip6tables番号が変更されても、特定のホストに送信されるトラフィックを一致させることができるプラグインはありますか? 他の OS ファイアウォールでは、これを異なる方法で処理しますか?

答え1

ip6tablesアドレスのビットマスクを受け入れます。iptablesおよび IPv4 とは異なり、これらのビットは必ずしもアドレスの先頭にある必要はありません。そのため、次のようなものでも問題なく動作します。

ip6tables -A INPUT -d ::1234:56ff:fe78:90ab/::ffff:ffff:ffff:ffff -j ACCEPT

::1234:56ff:fe78:90abこれにより、ip6tables はプレフィックスに関係なく、で終わる IPv6 アドレスに送信されるすべてのパケットを受け入れるようになります。

関連情報