小编Yd *_*hrk的帖子

为什么 NAT 不从机器的 TCP 和 UDP 端口池中保留端口?

我做了两个实验。这是他们俩的网络:

        [private network]     [public network]
    A -------------------- R ----------------- B
192.168.0.5     192.168.0.1|192.0.2.1       192.0.2.8
Run Code Online (Sandbox Code Playgroud)

一个的默认网关[R R有 IPv4 转发活动和以下 iptables 规则:

iptables -t nat -A POSTROUTING -p TCP -j MASQUERADE --to-ports 50000
Run Code Online (Sandbox Code Playgroud)

目的是,来自A 的任何 TCP都将使用R的端口 50000屏蔽为 192.0.2.1 。

我在B上的端口 60000 上使用nc -4l 192.0.2.8 60000.

然后我从A打开了一个连接:nc -4 192.0.2.8 60000

A开始发送如下所示的数据包:

192.168.0.5:53269 -> 192.0.2.8:60000
Run Code Online (Sandbox Code Playgroud)

R将其翻译成

192.0.2.1:50000 -> 192.0.2.8:60000
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好。

然后我试图打开下面的客户端- [R :nc -4 192.0.2.8 60000 …

networking iptables nat

8
推荐指数
1
解决办法
1412
查看次数

如何同时桥接 IPv4 和路由 IPv6?

我的 ISP 授予我一个IPv4 地址和一个 IPv6 前缀,该前缀已细分为几个网络。

              +--------------+
              |              | eth1
              |              |---------- <IPv6 network>
              |              |
         eth0 | Linux Router | eth2
ISP ----------|              |---------- <IPv6 network>
              |              |
              |              | eth3
              |              |---------- <IPv6 network>
              +--------------+
Run Code Online (Sandbox Code Playgroud)

碰巧的是,所连接的 IPv6 网络中的一个节点eth1将受益于拥有 IPv4 地址。

看来我希望路由器桥接IPv4 流量并路由IPv6 流量。不?

我听说过代理 ARP,但据我所知,我需要为路由器提供另一个 IPv4 地址,否则它不会尝试与 ISP 的 v4 流量进行交互,对吧?再说一遍,我只有一个 v4 地址。

我认为,普通桥接也不是一种选择,因为那是第 2 层,它无法区分 IPv4 流量和 IPv6 流量之间的区别。如果桥接 IPv4,也会桥接 IPv6,这会破坏当前的 IPv6 设置。

我是否被迫将流量 NAT 到专用网络,并从该网络为节点分配另一个地址?有更直接的选择吗?

routing bridge

2
推荐指数
1
解决办法
4396
查看次数

标签 统计

bridge ×1

iptables ×1

nat ×1

networking ×1

routing ×1