利用ipv6登录L2TP服务端
2024-04-28 本文已影响0人
今天i你好吗
相关文章:
Ubuntu搭建PPTP和L2TP服务端: https://www.jianshu.com/p/2ff24abf51df
go语言实现udp端口转发: https://www.jianshu.com/p/44eded155258
如果想要进行异地组网, 访问异地的smb等服务一般要用到pptp或者l2tp. 但是pptp和l2tp都只支持ipv4. 所以需要有一个外网的ipv4地址, 但是一般人都没有. 好在有外网ipv6的ip, 可以利用外网的ipv6进行数据转发来实现l2tp的登录.
数据传输图:
image.png既然l2tp可以通过应用侧进行udp数据转发跨ip版本实现登录,那么pptp是否也可以通过tcp数据转发实现跨ip版本登录?
答案是否定的, 我测试了各种方式都无法实现...
pptp只支持通过iptables进行端口转发, 比如下面这个命令就可以实现通过访问192.168.4.5来登录192.168.4.7 :
iptables -t nat -A PREROUTING -p tcp -d 192.168.4.5 --dport 1723 -j DNAT --to-destination 192.168.4.7:1723
iptables -t nat -A POSTROUTING -p tcp -d 192.168.4.7 --dport 1723 -j SNAT --to-source 192.168.4.5
但是iptables不支持ipv4和ipv6之间进行数据转发, ip6tables依然如此, 不知道有没有大佬有解决方案