我不是网络工程师,但我正在尝试配置我的 Linux 机器,以便在连接到 VPN 的同时访问互联网。
我目前解决这个问题的想法是在配置我的机器时连接到我的 VPN,在连接到我的 VPN 后不要重新配置我的路由,然后我会在需要时手动配置我的机器的路由以访问我的 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
如何0.0.0.0
为我的 VPN (ppp0) 接口设置网关?!非常感谢您提供有关我提到的路由表的所有可能信息。但请使用英文 :D
答案1
你的界面ppp0
是一个点对点协议隧道。PPP 连接仅设计为从一个点到另一个点,因此无需 IP 寻址。本质上,如果您的机器通过 PPP 接口发送数据包,则它只能到达一个地方!因此无需使用不同的 IP 地址来区分可能的接收者。
您没有指定正在使用的 VPN 软件,但配置要推送到客户端的路由是一种常见选项。如果您使用的是 OpenVPN,您可以找到有关定义要推送哪些路由的信息这里。
编辑:看起来你可能正在使用 PPTP VPN(顺便说一句,它不再安全,应尽可能避免使用)。在这种情况下,你可以通过执行以下操作来配置要添加的路由条目:
通过 ppp0 路由流量
要通过 PPP0 接口路由流量,编辑/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}
保存并关闭文件:
chmod +x /etc/ppp/ip-up.d/route-traffic