openvpn推送路由

需求

        openvpn 做好以后,发现到腾讯云网络不通,拓扑图参考如下:
img
        IDC机房和云上是通过vpn打通的。openvpn是假设在机房的,云上的部分东西是限制只能IDC访问。客户端拨号到openvpn以后是没有办法访问云上的。因为没有路由。所以需要在服务器端推送路由到客户端。

修改服务器端配置

        增加到云上的路由配置

1
2
push "route 172.16.11.0 255.255.255.0"
push "route 172.16.13.0 255.255.252.0"

增加nginx白名单的配置

        在云上有nginx到的proxy。但是里面做有白名单,也是只能IDC访问,ping域名解析是公网的ip地址。用户拨入openvpn以后,同样也不开这部分服务。这里就需要增加指定的ip,xxx.xxx.xxx.xxx 换成自己本身的公网ip地址。我这里的这个地址是一个slb地址。

1
push "route xxx.xxx.xxx.xxx 255.255.255.255"

重启openvpn

1
systemctl restart openvpn@server

客户端查看路由

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
netstat -nr

Routing tables

Internet:
Destination Gateway Flags Refs Use Netif Expire
default 192.168.31.1 UGSc 130 0 en0
10 10.8.0.5 UGSc 0 0 utun3
10.8.0.1/32 10.8.0.5 UGSc 0 0 utun3
10.8.0.5 10.8.0.6 UH 13 0 utun3
115.xxx.xxx.xx/32 10.8.0.5 UGSc 0 0 utun3
127 127.0.0.1 UCS 0 0 lo0
127.0.0.1 127.0.0.1 UH 68 6082666 lo0
169.254 link#5 UCS 2 0 en0 !
172.16.11/24 10.8.0.5 UGSc 1 1 utun3
172.16.13/22 10.8.0.5 UGSc 0 0 utun3
172.21.17/20 10.8.0.5 UGSc 8 0 utun3

        ping ip地址或者域名进行验证是否ok

坚持原创技术分享,您的支持将鼓励我继续创作!
0%