过滤从 IPv4 到 IPv6 的流量以及反之亦然

过滤从 IPv4 到 IPv6 的流量以及反之亦然

我曾尝试过滤(使用 nftables,但如果使用 iptables 可行,我愿意进行更改)从 IPv4 网络到 IPv6 网络的流量,但不知道如何做到这一点。

假设我有一个具有以下规则的文件:

table inet filter {
    chain networkfilter {
        type filter hook input priority 0; policy accept;
        ip saddr 10.1.0.0/16 ip6 daddr fd00:0:0:1::/64 drop
    }
}

当我尝试使用它加载时,nft -f notworking.nftables它会显示以下消息:

notworking.nftables:4:30-38: Error: conflicting protocols specified: ip vs. ip6
ip saddr 10.1.0.0/16 ip6 daddr fd00:0:0:1::/64 drop
                      ^^^^^^^^^

如何在不同 IP 版本的网络之间进行正确的过滤?

答案1

既不可能也不需要过滤 IPv4 和 IPv6 之间的流量,因为这种流量根本不存在。来自 IPv4 接口的网络数据包无法寻址到 IPv6 目标地址,反之亦然。

相关内容