10.8 服务器中的路由 - 通过 VPN 的 WiFi 客户端 - 不通过 VPN 的以太网客户端

10.8 服务器中的路由 - 通过 VPN 的 WiFi 客户端 - 不通过 VPN 的以太网客户端

我不确定我是否有合适的硬件来实现这一点,但是......

我有一台 Mac Mini i7 服务器,带有内置以太网(en0)、雷电以太网(en1)和内置机场。

我希望能够配置到另一个位置的 VPN(使用客户端的 PPTP 或 OpenVPN)连接,然后允许同一 192.168.xx 网络上的另一台设备通过 en1 或无线上的 Mac Mini Server 连接到 VPN。

但是,我还希望 Mac Mini Server 能够绕过 VPN 通过 en0 发送流量。

这是可能吗?

一种情况是 Apple TV 通过 wifi 或 en1 连接到 Mac Mini 服务器,然后通过 VPN 路由。同时,Mac Mini 充当 Plex 媒体服务器,并通过 en0(而不是通过 VPN)发送转码电影。

非常感谢您的帮助,谢谢您的关注。

答案1

是的,应该可以。我没有 Mac,但我确信它在概念上与在 Linux 下操作类似。设置 VPN 后(OpenVPN 是比 PPTP 更好的选择,但两者都应该可以正常工作),您需要做 3 件事。[我注意到,通过以太网或 WIFI 接口进行操作并不重要]

让我定义一下机器以便于参考:远程 = 网络之外的 OpenVPN 服务器服务器 = Mac Mini 客户端 = “同一 192.168.xx 网络上的其他设备”

  1. 在服务器上启用转发。
  2. 要么在远程上启用通过 VPN 到客户端的路由(即客户端/服务器子网的静态路由),要么让服务器伪装/nat 来自客户端发往远程的数据包。
  3. 在客户端上为远程服务器设置一条静态路由。

我没有办法尝试这些事情,但实际上,我相信以下方法会起作用:

  1. 通过输入启用数据包转发

    sudo sysctl -w net.inet.ip.forwarding=1
    在终端中。

  2. (这取决于您的设置)。对于 OpenVPN,您可能
    只需在 REMOTE 上的 OpenVPN 配置中添加一行即可实现此更改

    路由客户端 IP 范围 NETMASK 范围

    或者尝试类似

    /sbin/ipfw add divert natd all 从任意到任意通过 XXX

    在服务器上启用伪装(其中 XXX 是无线或以太网接口)

    或者看看http://hints.macworld.com/article.php?story=20021030055008917作为使用 Masquerading 设置 PPTP 隧道的起点。

  3. 使用命令

    路线-n添加REMOTE.IP gw SERVER.IP
    

    在客户端上。
    (查看http://blog.irrashai.com/blog/2009/03/how-to-add-static-route-in-mac-os-x/如何使它永久存在)

相关内容