linux router下的pptp协议穿透nat问题求教
场景:
嵌入式开发,采用linux的架构,实现路由功能。
开发板通过pppoe方式接入到公网
私网PC通过dhcp获取192.168.1.x网段ip,并且可以上网。然后通过pptp方式接入到vpn
问题:
私网PC经常无法pptp拨号成功,通过抓包发现,服务器发送的configuration request无法到达客户端PC。
于是怀疑是NAT的问题。
在网上看了很多资料,已经基本定位在GRE没有携带端口信息,导致路由器无法据此进行nat,从而引起反响无法穿透
我的疑问如下:
1:linux是否有内核选项已经支持了?如果有支持了,那么如何编译内核重新开启pptp的alg支持?
2:如果内核已经支持了,是怎么做到支持的?修改了GRE的报文吗?
3:可否自己编译成模块然后手动插入到内核?