V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
fouzhe2015
V2EX  ›  macOS

外部电脑如何访问 MacOS 热点局域网内的设备

  •  
  •   fouzhe2015 · Mar 24, 2023 · 1818 views
    This topic created in 1130 days ago, the information mentioned may be changed or developed.
    我有一台 Ubuntu20.04 台式机和一台 Mac ,台式机和 Mac 在同一个 zerotier 虚拟局域网下。
    Mac 连接网线并启用了互联网共享(充当热点),因此,Mac 的热点有一个本地局域网。
    Mac 没有开启网络防火墙。

    我的需求是使用台式机连接 Mac 热点局域网中的设备。

    基本信息:

    台式机:
    - zerotier ip: 10.144.27.4
    Mac:
    - zerotier ip: 10.144.27.1
    - 热点局域网 ip: 192.168.2.1
    目标设备:
    - 热点局域网 ip: 192.168.2.7

    首先,我在台式机上新增路由规则 `ip route add 192.168.2.0/24 via 10.144.27.1`;
    然后,在 mac 上开启了 IP 转发功能 `sudo sysctl -w net.inet.ip.forwarding=1`;

    此时,在台式机上 `ping 192.168.2.1` 能 ping 通,但 `ping 192.168.2.7` 还是不行;
    在 Mac 上使用 Wireshark 抓包,能抓到 10.144.27.4 到 192.168.2.7 的 ICMP Echo Request 报文,且有 192.168.2.7 到 10.144.27.4 的 ICMP Echo Reply 回复报文,因此可以推断,192.168.2.7 到 10.144.27.4 的链路出现了问题,这是为什么呢?请问该如何解决?
    6 replies    2023-03-25 09:54:22 +08:00
    xtinput
        1
    xtinput  
       Mar 24, 2023
    要不用端口映射?
    用 socat 把 10.144.27.1 的端口流量转发到 192.168.2.7
    fouzhe2015
        2
    fouzhe2015  
    OP
       Mar 25, 2023
    @xtinput 请问是指在 10.144.27.1 监听某个 /些端口,将端口流量映射到 192.168.2.7 的对应服务端口上?这种在端口比较多的情况下是否有便捷的方法呢?
    xtinput
        3
    xtinput  
       Mar 25, 2023
    @fouzhe2015 写个脚本,把要映射的端口都写在脚本里面,或者以参数的方式传入
    xtinput
        4
    xtinput  
       Mar 25, 2023
    https://github.com/darvintang/dvtvmcli/blob/main/bin/dvtsocat 我封装了一个简单的脚本,你可以在这个基础上让它支持多端口
    fouzhe2015
        5
    fouzhe2015  
    OP
       Mar 25, 2023
    @xtinput 感谢感谢,我去试试!
    不过我还是有点好奇我原有的方案哪里出现了问题,求指点
    geekzjj
        6
    geekzjj  
       Mar 25, 2023 via Android
    台式机上没有回程路由
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   4615 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 10:07 · PVG 18:07 · LAX 03:07 · JFK 06:07
    ♥ Do have faith in what you're doing.