设置PPTP透明访问家庭网络

设置PPTP透明访问家庭网络

我有树莓派盒子连接到家庭 WiFi 路由器并运行pptpd。本地地址为192.168.1.32(eth0) 和192.168.2.1(ppp0),本地名称为raspberry.local

我有iMac192.168.1.27使用本地 IP和本地名称连接到同一路由器 imac.local

我有苹果笔记本互联网上的某个地方通过192.168.2.10ppp0连接到 Raspberry 的 PPTP

这张图显示得更清楚。

在此处输入图片描述

pptpd 配置

Raspberry 上的 PPTP 是从这个简单的脚本

/etc/pptpd.conf

option /etc/ppp/options.pptpd
logwtmp
localip 192.168.2.1
remoteip 192.168.2.10-100

/etc/ppp/options.pptpd

name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
lock
nobsdcomp 
novj
novjccomp
nologfd

/etc/rc.local


echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -I INPUT -p tcp --dport 1723 -j ACCEPT
iptables -I INPUT  --protocol 47 -j ACCEPT
iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -d 0.0.0.0/0 -o eth0 -j MASQUERADE
iptables -I FORWARD -s 192.168.2.0/24 -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j TCPMSS --set-mss 1356

当前连接

苹果笔记本
  • 可以连接家里的PPTP,通过家里的路由器连接互联网
  • 可以通过本地 IP 连接到 iMac 和 Raspberry 192.168.1.27,并且192.168.1.32
  • 不是解决raspberry.localimac.local
覆盆子
  • 可以通过本地 IP 连接到 iMac 和 Macbook,192.168.1.27 并且192.168.2.10
  • 可以解决imac.local
  • 不是解决macbook.local
iMac
  • 可以通过本地 IP 连接到 Raspberry192.168.1.32
  • 可以解决raspberry.local
  • 不是通过本地 IP 连接到 Macbook 192.168.2.10(更新:通过在路由器上添加静态路由解决)
  • 不是解决macbook.local

目标

目标是连接并解析任意本地名称。但我不知道如何配置它:iptables、avahi、netatalk 还是其他地方?

答案1

在 iptable 中使用 ip 地址是可以的。但是,也可以使用不涉及 IP 地址但引用 eth0 接口的语句。它确实从进程中删除了一个变量:iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE

注意:要检查 iptables 在重启后是否处于活动状态:iptables -t nat -L

启用 iptables 的脚本从 /etc/network/interfaces 文件启动,可能略有不同。在撰写本文时,该行有 manual 而不是 dhcp。只需在该行后面输入脚本名称:iface eth0 inet manual

此外,openvpn.conf 中的 local ip_address 是可选的。如果没有定义,OpenVPN 将监听所有接口。同样,从流程中删除一个变量。

为了进一步减少变量,即获取一个可以在任何 Raspberry 上运行的 openvpn.conf,而无需参考 Raspberry 上使用的 IP,也可以使用 Google DNS 服务器,而不推送本地网络的路由。请注意,删除本地网络的路由意味着无法访问本地网络,但允许通过启动测试访问互联网:添加路由 / 本地快速 DNS后者对设置更加确定。

相关内容