我在日本的Ubuntu 14.04上设置了一个openvpn服务器,我的兄弟在瑞士的Ubuntu 14.04上设置了一个openvpn客户端。 vpn连接成功工作,并且客户端或服务器端的ping请求成功回答。我也在我的计算机中设置了IP转发和nat配置。我的兄弟可以通过我的互联网连接浏览互联网(连接到日本的ISP)。当他浏览互联网时,他的公共IP与我的相同。
问题: " 我可以通过他的互联网连接浏览互联网,并在浏览互联网时可以看到他的公共IP,并且使用这种vpn结构(他的计算机 - >客户端和我的计算机 - >服务器侧)&#34 ;?如果是,必须使用哪种配置?"
我知道,如果他作为服务器端并且我充当客户端,我可以这样做,但问题很清楚。
答案 0 :(得分:1)
经过艰苦搜索,解决方案是: 与openvpn(如this)建立点对点安全连接是解决方案(简单的点对点安全连接)。 必须向每一侧添加一些路由表条目和防火墙条目。 在日本的p-t-p服务器模式下启动openvpn并将其命名为A并在瑞士的p-t-p客户端模式下启动openvpn并将其命名为B.连接建立得非常快。 然后在Ubuntu终端中添加这样的日本方面的路由表enrties(A(日本)隧道接口IP为10.8.0.1,B(瑞士)隧道接口IP为10.8.0.2):
In [24]:
df['New_Col'] = df['ActualCitations']/pd.rolling_sum(df['totalPubs'].shift(), window=2)
df
Out[24]:
Year totalPubs ActualCitations New_Col
0 1994 71 191.002034 NaN
1 1995 77 2763.911781 NaN
2 1996 69 2022.374474 13.664692
3 1997 78 3393.094951 23.240376
并在瑞士方面添加一些防火墙规则:
route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.8.0.2 dev tun0
route add -net 111.111.111.111 netmask 255.255.255.255 gw 192.168.1.1 dev eth1 //(eth1 is the internet interface)
//replace 111.111.111.111 with Swiss side public IP
//192.168.1.1 is the IP of internet interface
sysctl net.ipv4.ip_forward=1
iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE
然后当A侧浏览互联网时,他的公共IP与B侧公共IP相同。