微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何将从一个networking接口接收的数据包redirect到另一个networking接口?

我正在使用ubuntu11.10,并使用以下命令创build了tun / tap界面

openvpn --mktun --dev tun0 ip link set tun0 up ip addr add 10.10.10.1/24 dev tun0 route add 10.10.10.1/24 dev tun0

我有一个界面

eth0 10.80.1.87

我想将从tun0收到的数据包redirect到eth0。 如何在Ubuntu上做到这一点?

这种文件locking方法可以接受吗?

我有足够的端口时为什么'没有可用的缓冲空间'错误

在Windows Server,Java中监视UDP数据包丢失

使用Python从连接的Windowsnetworking共享获取IP地址

客户端发送延迟FIN ACK(〜500ms)到服务器

Linux服务器中的TCP窗口缩放 – 可能的副作用

如何获得精确的ping测量

你如何在Windows上创build虚拟networking接口?

/etc/resolv.conf中指定的超时值是什么?

没有从HTML代码访问共享文件夹? 如何解决它?

作为两个好的答案的补充,请记住:

在链路层(“以太网层”)进行桥接工作 – 因此在两个接口之间配置桥接器通常是通过(虚拟) 交换机

在网络层(“IP层”) 转发工作 – 在两个接口之间配置转发就像通过(虚拟) 路由器连接它们一样

根据TCPIP标准的要求,IP转发认是关闭的。 你打开它:echo 1> / proc / sys / net / ipv4 / ip_forward

那么转发将起作用。 您好像在您的文章添加了几行,所以我无法确定您的网络配置。

如果tun0上的数据包在eth0上带有一个目的地,它现在将被转发。 你的Ubuntu机器将作为一个路由器。 它不会盲目地将进入tun0的数据包放到以太网上。

所以如果你的tun0的IP地址是10.10.10.1,那么另一个主机,比如说tun0的10.10.10.45,必须配置10.10.10.1的网关(至少是10.80.1.0/24)。 那么如果它有一个包10.80.1.234,它将首先转发到10.10.10.1,你的Ubuntu机器将转发到以太网上的10.80.1.234。 接下来,该机器将回复10.10.10.45。 它必须配置为使用10.80.1.87作为该主机/网络的网关。 如果所有配置正确,它将工作。

在10.80.1.0/24的机器上配置正确的网关的另一种方法是启用ip masquerading。 然后你的ubuntu机器会伪造FROM地址,并将10.80.1.87替换为10.10.10.45曾经的源代码

听起来就像你想配置两个网络接口之间的桥梁也有Ubuntu的具体手册在这里 (转到:桥接)

$ sudo apt-get install bridge-utils # vim /etc/network/interfaces:

auto lo iface lo inet loopback auto br0 iface br0 inet static address 192.168.0.10 network 192.168.0.0 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 bridge_ports eth0 bridge_fd 9 bridge_hello 2 bridge_maxage 12 bridge_stp off

$sudo /etc/init.d/networking restart

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐