首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何启用TUN/TAP转发?

如何启用TUN/TAP转发?
EN

Server Fault用户
提问于 2011-06-07 18:20:46
回答 3查看 30.1K关注 0票数 4

我有一个程序,它将数据包(目标地址10.3.0.2)写入TUN/TAP接口。

网络:

代码语言:javascript
复制
host1|tun0----eth1(10.3.0.1)|-------------------host2|eth1(10.3.0.2)|

Wireshark从接口tun0捕获这些数据包,但它们不会转发到接口eth1

命令:

代码语言:javascript
复制
sysctl -w net.ipv4.ip_forward=1
sysctl -p

iptables -A INPUT -i tun+ -j ACCEPT

iptables -A FORWARD -i tun+ -j ACCEPT

iptables -A INPUT -i tap+ -j ACCEPT

iptables -A FORWARD -i tap+ -j ACCEPT

/etc/init.d/networking restart

/etc/init.d/openvpn restart
EN

回答 3

Server Fault用户

发布于 2012-02-10 12:02:43

你用的是水龙头还是水龙头?

如果希望远程主机位于同一个子网中,则应该使用tap而不是tun,从eth1中删除10.3.0.1,在eth1和tap0之间创建一个桥,并将10.3.0.1分配给桥接口。

这比tun效率略低,但将允许vpn主机和本地网络之间的非IP和广播通信量。(因此,允许您的vpn主机在本地网络上使用dhcp服务器,或者如果愿意,可以伪造它们的地址)。

如果您希望为您的vpn主机提供一个单独的网络,您应该为隧道指定一对地址(如果您在多客户端服务器模式下使用openvpn而不是在p2p模式中使用openvpn),那么您应该确保这些地址绑定到tun接口,并且tun已经打开。在你的画中没有隧道的地址。

根据您的发行版,重新启动网络服务可能会破坏您对iptables所做的更改。

票数 3
EN

Server Fault用户

发布于 2011-08-16 20:41:19

您需要在两个接口(tun0和eth0)之间设置桥接,下面是一些关于如何设置桥接器的文档:

http://www.linuxfoundation.org/collaborate/workgroups/networking/bridge

票数 1
EN

Server Fault用户

发布于 2016-03-10 13:05:26

您所遇到的问题是由于没有在内核中启用gre模块:Sudomod探针ip_gre。

票数 -2
EN
页面原文内容由Server Fault提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://serverfault.com/questions/277951

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档