Linux CentOS中的GRE隧道路由问题

时间:2013-11-08 16:58:36

标签: linux networking routing tunnel tunneling

我正在使用以下步骤在两个Linux(CentOS6)服务器之间创建GRE隧道。

在主服务器上:

chkconfig iptables off

service iptables stop

sysctl -w net.ipv4.conf.default.rp_filter = 0

modprobe ip_gre

ip tunnel add tun1 mode gre remote 98.123.87.97 local 106.61.58.98 ttl 255

ip addr add 10.0.1.0/24 dev tun1

ip link set dev tun1 up

ip addr add 98.123.87.95/27 dev eth0

在从属服务器上:

chkconfig iptables off

service iptables stop

sysctl -w net.ipv4.ip_forward = 1

sysctl -w net.ipv4.conf.all.forwarding = 1

sysctl -w net.ipv4.conf.proxy_arp = 1

sysctl -w net.ipv4.conf.all.proxy_arp = 1

sysctl -w net.ipv4.conf.eth0.rp_filter = 0

sysctl -w net.ipv4.conf.default.rp_filter = 0

modprobe ip_gre

ip tunnel add tunx mode gre remote 106.61.58.98 local 98.123.87.97 ttl 255

ip addr add 10.0.2.0/24 dev tun0

ip link set tunx up

ip route add 98.123.87.95/27 dev tun0

我需要将奴隶服务器的IP添加到我的主服务器上,我从隧道IP(Slave Server的IP)获取ping响应,当我尝试SSH隧道IP(从属IP)时,我将接触到Masters (这就是我想要的)。

问题是当我尝试通过隧道IP(从属IP)发送DNS查询等传出流量时,我正在请求超时。

我想这是我服务器之一的路由问题。知道我应该怎样做以通过隧道IP来传递我的传出流量?

谢谢,

1 个答案:

答案 0 :(得分:1)

你真的在添加10.0.1.0/24地址吗?这是一个网络地址,看起来像是错误。 此外,您还可以通过gateway = another_end_of_tunnel的隧道在客户端计算机上添加默认路由(或路由到dns服务器或任何您想要的路由)。 在添加默认路由之前,如果您不想断开连接,请不要忘记为您的计算机添加静态路由!