V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
waynevan
V2EX  ›  宽带症候群

请教大佬一个不同网段组网的问题,能解决的话 20 红包感谢

  •  
  •   waynevan · 131 天前 · 3554 次点击
    这是一个创建于 131 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我电脑: wireguard IP:10.101.0.2 对方电脑: wireguard IP:10.101.0.3 另外一个网卡:172.16.36.88

    我电脑可以 ping 通对方电脑的 10.101.0.3 , 对方也可以 ping 通我电脑的 10.101.0.2 ,

    对方电脑可以访问 172.16.36.201 的 web 服务

    请问怎么设置 我电脑可以访问 172.16.36.201 的 web 服务或者对方电脑同局域网的其他电脑

    请大佬指导,谢谢

    第 1 条附言  ·  130 天前
    1 、帖子下面的方案大部分都试过了,不能解决
    2 、闲鱼上咨询,也说这种不能实现,除非再加个软路由
    3 、谁能远程帮我处理好的话,联系我。感谢费 50
    第 2 条附言  ·  130 天前
    我的 pho-ne:1318-67-816-05
    可以先发短信说下,然后电话
    第 3 条附言  ·  130 天前
    解决了,感谢 52 楼
    参考:
    https://toutiao.io/posts/ygh4g3l/preview

    @illl 你支付宝账号发给我,我转你 20 ,谢谢
    第 4 条附言  ·  130 天前
    也感谢,下面其他朋友的指导,谢谢了。
    64 条回复    2022-01-18 11:56:48 +08:00
    htfcuddles
        1
    htfcuddles  
       131 天前
    172.16.36.201 不是本机,所以要 SNAT
    linux 的话 iptables 转发
    /etc/wireguard/wg.conf:
    PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ethX -j MASQUERADE
    PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ethX -j MASQUERADE
    ethX 是第二网卡名
    /etc/sysctl.conf:
    net.ipv4.ip_forward = 1
    preach
        2
    preach  
       131 天前
    对方电脑 vswitch 两个网卡
    conupefox
        3
    conupefox  
       131 天前
    是 windows 吗?用 internet 连接共享应该可以。
    对方电脑把 172.16.36.88 那个网卡共享给 10.101.0.3 那个网卡。

    你自己的电脑加一条静态路由,cmd 里面输入 route add 172.16.36.0 mask 255.255.255.0 10.101.0.3
    htfcuddles
        4
    htfcuddles  
       131 天前
    windows 的话 ics 应该行,随便找了篇将就看看
    https://support.ringcentral.com/article/Enable-Internet-Connection-Sharing-ICS.html
    iMercer
        5
    iMercer  
       131 天前 via iPhone
    在你电脑上设置路由表规则:destnation: 172.16.36.1/24
    gateway: 10.101.0.3
    pproxy
        6
    pproxy  
       131 天前
    检查一下.2 的 peer 的 allowed-ips 吧
    说回来 wireguard 的 allowed-ips 的确很容易让人误解
    waynevan
        7
    waynevan  
    OP
       131 天前
    @htfcuddles 两台电脑都是 Windows 系统
    waynevan
        8
    waynevan  
    OP
       131 天前
    @iMercer 我是这样设置的,没效果
    https://imgtu.com/i/73r5iq
    waynevan
        9
    waynevan  
    OP
       131 天前
    @conupefox 好的 我试试
    FakNoCNName
        10
    FakNoCNName  
       131 天前
    wireguard 里面有个 AllowedIPs ,可以用来指定哪些 ip 走 vpn ,你可以试试在自己电脑的 wireguard 里面加上 172.16.36.1/24 这个网段。
    ik
        11
    ik  
       131 天前 via iPhone
    访问对方主机,你这边需要添加路由

    还需要访问对方整个网络的话,对方主机还需要添加 nat
    waynevan
        12
    waynevan  
    OP
       131 天前
    @conupefox 设置过共享,路由也加了,还不行。可以帮我远程看下吗
    https://imgtu.com/i/73hwXq
    zagfai
        13
    zagfai  
       131 天前
    tailscale 瞬间搞定
    ericbize
        14
    ericbize  
       131 天前
    写路由,把 172.16 写到 隧道里面去
    ericbize
        15
    ericbize  
       131 天前
    当然可能其中会有,nat , 防火墙 转发 一大堆的东西要调
    waynevan
        16
    waynevan  
    OP
       131 天前
    @zagfai tailscale 也需要设置路由的吧
    digimoon
        17
    digimoon  
       131 天前
    什么系统? linux 的话要设置打开 ip 转发然后再设好路由表和 iptables ,windows 的话就不知道怎么搞了
    acbot
        18
    acbot  
       131 天前
    wireguard IP:10.101.0.3 支持转发的话,要在两边做静态路由

    wireguard IP:10.101.0.2 做目标 172.16.36.88 的路由 下一跳 10.101.0.3
    wireguard IP:172.16.36.88 做目标 10.101.0.2 的路由 下一跳 10.101.0.3
    waynevan
        19
    waynevan  
    OP
       131 天前
    @ericbize 能远程帮我搞下吗,谢谢
    waynevan
        20
    waynevan  
    OP
       131 天前
    @digimoon 我电脑,对方电脑都是 windows 系统
    digimoon
        21
    digimoon  
       131 天前
    你的电脑这边的 allowips 需要添加 172.16.36.201 ,这样你电脑 wg 连上对面的时候就会自动添加路由表,访问 172.16.36.201 的时候往对面跑

    对面 linux 的话要开 ip 转发 net.ipv4.ip_forward=1 ,还要设好 iptables 的 forward 链
    digimoon
        22
    digimoon  
       131 天前
    @waynevan windows 就不知道怎么设这个了,你电脑这边只需要设 allowips 就行了,剩下的部分需要对面那边设置
    digimoon
        23
    digimoon  
       131 天前
    注意一下就是 172.16.36.201 也需要设置静态路由,如果不想设的话只能在对面电脑上 172 出口用 nat
    coolan
        24
    coolan  
       131 天前
    对方主机上开启 Routing and Remote Access 服务试试。参考: https://www.cocosec.com/archives/561.html
    coolan
        25
    coolan  
       131 天前
    应该不行,你需要对方机器给你做 NAT ,干脆在他那部署一个代理服务器,你连接代理算了。
    jiangwei2222
        26
    jiangwei2222  
       131 天前 via Android
    让对方开个 openvpn ,然后你连 vpn 过去,你如果什么都不懂的话别折腾什么转发了
    bigotangee
        27
    bigotangee  
       131 天前
    网段转发的话需要对方需要配置 iptables 转发(参考一楼),本地需要配置路由表,同时 wiregurad 上要修改对方节点的 allowips,简单起见的话,可以考虑使用 netmaker 或是 tailscale
    bigotangee
        28
    bigotangee  
       131 天前
    @waynevan tailscale 的路由配置相对比较简单,点一点就好了
    disk
        29
    disk  
       130 天前
    不行吧。看描述,貌似你和对方电脑都是 client ,需要去配置 server 才能做到网络接入,还是让对方开个端口转发到 10.101.0.3 吧。
    jasonyang9
        30
    jasonyang9  
       130 天前
    这是典型的点到站拓扑,Point to Site ,对方节点要配置 MASQUERADE 或 SNAT ,开启 IP 转发
    waynevan
        31
    waynevan  
    OP
       130 天前
    @jasonyang9 对方是 Windows 系统
    waynevan
        32
    waynevan  
    OP
       130 天前
    @jiangwei2222 wireguard 就是和 openvpn 差不多的 都是 vpn ,现在就是能访问对方,然后想访问对方同局域网其他电脑。
    jasonyang9
        33
    jasonyang9  
       130 天前
    @waynevan 搜了一下,看上去 Windows 应该也是可以的。但这里我出个歪招啊,Windows 上面跑个 VBOX 或容器,最小安装的 Debian 或其它发行版,WG 配置好,一把梭,666
    waynevan
        34
    waynevan  
    OP
       130 天前
    @jasonyang9 闲鱼上的卖家说 需要加个软路由
    zagfai
        35
    zagfai  
       130 天前
    @waynevan tailscale 自带,不用,鼠标点几下就 ok 了。
    waynevan
        36
    waynevan  
    OP
       130 天前
    @zagfai 现在有空吗,帮我远程搞下。我先去阿里云开个服务器,可以吗?
    0gys
        37
    0gys  
       130 天前 via iPhone
    我记得 windows 有网桥服务。如果对方电脑这两个网卡做成网桥形式,你在你这设置 172.16.36.0/24 段地址按理是可以访问的。前提是这两个网卡能做成网桥形式。如果对方是 Linux,设置源地址转发 snat 也是可行的。
    yorkyoung
        38
    yorkyoung  
       130 天前
    我的思路是你 0.2 的 wg 配置 allowed IP 要加上 127.16.36.88/32
    路由一跳到 0.3 二跳到 172
    每一跳都需要加路由规则
    wlh233
        39
    wlh233  
       130 天前
    我有过类似需求,但我做法很粗暴,尝试过两种方式都是工作在应用层:一是用 sshuttle ;二是直接在 10.101.0.3 跑一个 v2ray server, 需要访问 172.16.36 网段就挂着代理。不过我的 10.101.0.3 不是 Windows
    yorkyoung
        40
    yorkyoung  
       130 天前
    我的思路是你 0.2 的 wg 配置 allowed IP 要加上 127.16.36.0/24
    路由一跳到 0.3 二跳到 172
    每一跳都需要加路由规则

    或者把.201 也加入到你的 wg 内网来

    或者在 0.3 上装个 gost 来端口转发也能实现你说的效果
    waynevan
        41
    waynevan  
    OP
       130 天前
    @wlh233 好的 我试试
    waynevan
        42
    waynevan  
    OP
       130 天前
    @zagfai 我看了 tailscale 的文档,说不支持 Windows 做网关。
    Currently, we only support Linux devices as subnet routers. We plan to support this feature on Windows and macOS in the future.
    waynevan
        43
    waynevan  
    OP
       130 天前
    @zagfai 找到 Exit Nodes 了,周一了我试下,不懂 我再请教你
    waynevan
        44
    waynevan  
    OP
       130 天前
    发现 Exit Nodes 这个网关是,做内网出口的,不是从外面访问内网用的
    volks
        45
    volks  
       130 天前 via Android
    学习一下,同样的需求(两个 Windows )没搞成功。看到有文章里打开路由服务就可以,但我打开了也没效果
    ciichen
        46
    ciichen  
       130 天前 via Android
    172 网段的网关需要手动添加路由表,转发 wg 的 10 网段目的地址到对方电脑的 172 网段 ip 地址。
    然后你的电脑的 wg ,需要设置 172 网段对应网关为对方电脑。
    对方电脑开启路由转发。


    或者,在对方电脑装个 xray ,监听 wg 10 网段
    ciichen
        47
    ciichen  
       130 天前 via Android
    你的电脑通过 wg ,连接对方电脑的 xray 服务端。然后浏览器使用 xray 代理,xray 开启全局转发。
    ciichen
        48
    ciichen  
       130 天前 via Android
    关键是,如果 172 网段的 web server 发现 10 网段源地址的请求,回复的数据包会发送到默认网关。而默认网关若是找不到前往 10 目的网段的下一跳路由,可能直接把数据包丢弃。
    hawhaw
        49
    hawhaw  
       130 天前 via Android
    为毛搞不成呢?楼上已经有人把东西都说的很清楚了
    1, 在电脑 2 上做 nat ,这样不需要在 172 段设回程路由
    2, 在电脑 2 上做转发,这样需要 172 段设置回 10 段的路由
    GHvyuR7N
        50
    GHvyuR7N  
       130 天前 via iPhone
    其实吧,如果有特别重要的事情需要立即弄,还有一种选择是买个蒲公英。就是基础宽带低…
    thisismr2
        51
    thisismr2  
       130 天前
    你的电脑管理员权限运行:

    $ zonenetclient --zoneuuid ZONE_UUID --name windows1

    对方电脑管理员权限运行:

    $ zonenetclient --zoneuuid ZONE_UUID --name windows2 --map '80 172.16.36.201:80'

    然后你的电脑就可以访问 对方电脑 的 zone ip 的 80 端口就等于访问 172.16.36.201:80
    illl
        52
    illl  
       130 天前 via iPhone
    试一下看雪的 ksa ,aHR0cHM6Ly9rc2Eua2FueHVlLmNvbS8=
    ji39
        53
    ji39  
       130 天前
    对方反代行不行
    tailf
        54
    tailf  
       130 天前
    对方电脑支持从你的电脑 SSH 登录吗,如果支持,一个 SSH 代理就可以解决:

    ssh -L 8000:172.16.36.201:80 [email protected]
    tailf
        55
    tailf  
       130 天前
    接上条。

    SSH 连上之后不要关,然后在你电脑上访问 127.0.0.1:8000 就可以拿到 172.16.36.201:80 的网页了
    waynevan
        56
    waynevan  
    OP
       130 天前
    @illl 这个工具好用,解决了,谢谢。你把你的支付宝账号发我,我给你转 20 。我的 pho-ne:1318-67-816-05
    xsen
        57
    xsen  
       129 天前
    tailscale ,对方电脑设置 subnet router

    Subnet routers and traffic relay nodes
    https://tailscale.com/kb/1019/subnets/
    guanzhangzhang
        58
    guanzhangzhang  
       128 天前
    如果两个都是 linux ,例如 openwrt 之类的话就很简单了,开启转发和 masq 即可
    illl
        59
    illl  
       128 天前 via iPhone
    @waynevan 已发短信,尾号 63
    waynevan
        60
    waynevan  
    OP
       128 天前
    @illl 提示:该手机号暂不能接收转账,需要到我的--设置--隐私--常用隐私设置开启: [通过手机号向我转账] 。

    你设置后通知下我,谢谢。
    waynevan
        61
    waynevan  
    OP
       128 天前
    @illl 已转
    illl
        62
    illl  
       128 天前 via iPhone
    @waynevan 已收到🤝
    ericww
        63
    ericww  
       128 天前
    修改 wireguard 配置和开启 ics 就可以了。你的 AllowsIPs=10.101.0.0/24,172.16.36.0/24 。对方 172 网卡属性允许共享,然后对方 wireguard 网卡会被 windows 修改 IP ,只要手动再设置固定 IP 10.101.0.3 就可以了。你就能访问整个 172.16.36.0/24 网段了。
    echoechoin
        64
    echoechoin  
       127 天前
    windows 用 netsh: 在对方电脑管理员方式打开 cmd ,运行:netsh.exe interface portproxy add v4tov4 listenport=80 listenaddress=0.0.0.0 connectport=80 connectaddress=172.16.36.201 , 这样对方电脑会监听 80 端口给 172.16.36.201:80 做正向代理
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2957 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 10:59 · PVG 18:59 · LAX 03:59 · JFK 06:59
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.