为什么配置了VPN还是无法上网?
背景与问题
最近在研究基于UDP的私有网络(VPN),首先解答了我一个误区,基于UDP的VPN只能转发UDP数据。其实,这里的基于UDP可以理解为用UDP承载数据,而这个数据具体什么格式的不重要,如果产于传输的两个节点(Peer)的两个应用之间是用TCP传输也是可以的。只是节点Peer1先把数据扔给VPN网卡1,VPN网卡1用UDP封装数据,然后给到Peer2的VPN网卡2,然后用VPN网卡2还原Peer2本应该接收的数据,完成应用之间的数据交换。 在保证了VPN的配置没有问题,两个节点可以正常通讯以后,就算客户端热切的希望能通过VPN上网,但是实际上并不能,原因是:
就算服务端已经配置了NAT,但是还缺少ip_forwarding的配置
Debian的ip_forwarding设置
GCD上Debian默认ip_forwarding是关闭的 需要用vi工具打开文件sysctl.conf
vi /etc/sysctl.conf
把下面两行前面的#去掉,然后保存
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
然后重新加载ip_forwarding
sysctl -p
搞定!
版权声明
本文仅代表作者观点,不代表区块链技术网立场。
本文系作者授权本站发表,未经许可,不得转载。
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。