首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >无法到达第4跳,pc作为路由器,静态路由

无法到达第4跳,pc作为路由器,静态路由
EN

Network Engineering用户
提问于 2018-08-13 11:51:58
回答 2查看 48关注 0票数 0

我正试图将PC设置为路由器,但不知怎么的,它没有正常工作。我有以下背景:

代码语言:javascript
运行
复制
CLIENT A
192.168.21.1/28
l
l
192.168.21.5/28
ROUTER X
192.168.21.25/28
l
l
192.168.21.17/28
CLIENT B (with openvpn tunnel to server)
10.29.0.4/22
l
l
10.29.0.1/22
SERVER

客户端B到服务器的连接是通过互联网进行的,但在这里不重要。

现在的问题如下:

  • 我可以从路由器X点击服务器
  • 我可以从客户A点击地址(客户B) 10.29.0.4 (使用traceroute,我可以看到它运行正常)
  • 我不能从客户端A点击服务器

在相反的方向相同:

  • 我可以从服务器发送地址192.168.21.25 (路由器X)。
  • 我不能按地址192.168.21.5

对我来说,这似乎与生存时间(TTL)有关,因为数据包无法到达第四跳,但我在互联网上没有发现任何关于它的信息。

代码语言:javascript
运行
复制
route -n on server

192.168.21.16   10.29.0.4       255.255.255.240 UG    17     0        0 tun0
192.168.21.0    10.29.0.4       255.255.255.240 UG    17     0        0 tun0
192.168.20.0    0.0.0.0         255.255.255.0   U     0      0        0 eth1
10.29.0.0       0.0.0.0         255.255.252.0   U     0      0        0 tun0
XXXXXXXX    0.0.0.0         255.255.0.0     U     1002   0        0 eth1
0.0.0.0         YYYYYYYY  0.0.0.0         UG    0      0        0 eth1

在客户端B上,我添加了两个iptables规则:

代码语言:javascript
运行
复制
-A FORWARD -i eth0 -o tun0 -j ACCEPT
-A FORWARD -i tun0 -o eth0 -j ACCEPT

你知道吗,出什么事了?谢谢你的意见。

EN

回答 2

Network Engineering用户

回答已采纳

发布于 2018-08-23 14:28:12

问题是,在tun模式下的OpenVPN使用iroute参数在内部管理远程网络.

要解决这个问题,必须更改为点击并添加以下iptables规则:

代码语言:javascript
运行
复制
iptables -A FORWARD -i eth0 -o tap0 -j ACCEPT
iptables -A FORWARD -i tap0 -o eth0 -j ACCEPT

但是,我们将通过tcp协议获得tcp,这会导致延迟。我认为没有其他解决方案用于使用OpenVPN进行路由。

这个问题是在https://gitlab.labs.nic.cz/labs/bird/wikis/FAQ#dynamic-routing-issues-with-openvpn上提到的

票数 0
EN

Network Engineering用户

发布于 2018-08-13 23:56:03

听起来你错过了192.168.21.0/28两个地方中的一个(或两者)的路线。

  1. 如果openvpn以"server“模式运行,则openpvn中的内部路由表。
  2. 论clientB
票数 0
EN
页面原文内容由Network Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://networkengineering.stackexchange.com/questions/52528

复制
相关文章

相似问题

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