如何find我的VPN网关?

我不是networking工程师,但我正在尝试configuration我的Linux机器在连接到我的VPN的同时访问互联网。

我目前的想法解决这个问题是连接到我的VPN,而configuration我的机器不连接到我的VPN后重新configuration我的路由,然后我会手动configuration我的机器的路由访问我的VPN时,我需要(即为特定IP范围)。

所以我目前正在试图了解下面的路由表:

$ route -n Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 0.0.0.0 0.0.0.0 0.0.0.0 U 50 0 0 ppp0 0.0.0.0 192.168.16.1 0.0.0.0 UG 600 0 0 wlp8s0 10.100.0.0 0.0.0.0 255.255.255.255 UH 50 0 0 ppp0 62.135.17.146 192.168.16.1 255.255.255.255 UGH 0 0 0 wlp8s0 192.168.16.0 0.0.0.0 255.255.255.0 U 600 0 0 wlp8s0 

如何为我的VPN(ppp0)接口configuration一个0.0.0.0网关? 关于我提到的路由表的每个可能的信息是非常感激。 但是请用英语:D

您的接口ppp0是一个点对点协议隧道 。 PPP连接的devise只能从一个点到另一个点,所以不需要IP寻址。 从本质上讲,如果你的机器通过PPP接口发送一个数据包,它只能有一个地方! 因此,不需要区分具有不同IP地址的可能的收件人。

您没有指定使用哪种VPN软件,但是configuration将哪些路由推送到客户端是常用选项。 如果您使用的是OpenVPN,您可以find有关定义在此处推送哪些路线的信息。

编辑:看来你可能会使用PPTP VPN(顺便说一句,不再sercure,应尽可能避免)。 在这种情况下,可以通过执行如下操作来configuration添加的路由条目:

通过ppp0路由stream量

要通过PPP0接口路由stream量,请编辑/etc/ppp/ip-up.d/route-traffic

 vi /etc/ppp/ip-up.d/route-traffic 

追加以下示例代码(根据您的需求修改.NET IFACE):

 #!/bin/bash NET="10.0.0.0/8" # set me IFACE="ppp0" # set me #IFACE=$1 route add -net ${NET} dev ${IFACE} 

保存并closures文件:

 chmod +x /etc/ppp/ip-up.d/route-traffic