[RouterOS] IP 分流之后人类社会无法回访的问题 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dalaoshu25
V2EX    宽带症候群

[RouterOS] IP 分流之后人类社会无法回访的问题

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

    众所周知,RouterOS 通过 wireguard 和 OSPF 分流之后,访问人类社会网络非常方便。凡是访问人类社会,直接就走 WG 隧道。

    现在有个问题: 有些情况下,海外的主机主动过来访问却遇到了失败。

    比如偶遇到的情况:申请和更新 LetsEncrypt 证书的时候,letsencrpt 那边要检查域名的合法性,会从海外主机通过 web 读取这边的验证文件。这时候外来的数据是走正常的路由,而从本地返回的数据经过 RouterOS 后却走了分流的路由,从海外 VPS 那边过去了。主机那边显然认为这是非法数据包拒收了,于是验证过程失败。

    解决方法之前有两个:

    1. 使用 RFC2136 方式验证域名
    2. 临时关闭 IPv6 的 OSPF 分流

    有的动态域名供应商支持 RFC2136 ,比如 dynv6 ,方法一可行,普通 Linux 主机可以用这个。 但是 RouterOS 自己不支持,很多动态域名供应商也不支持,比如 ipv64.net ,只能用方法 2 。 但这个影响略大,一般是放在半夜三点的时候做。

    基本解决思路跟那些双线分流的策略路由差不多:跟踪包的来源,从哪儿来还从哪里回去。

    OSPF 分流是把所有人类社会的网段全部走隧道出去的,虽然相当一部分网段是不受栅栏影响的,但是考虑到国内 v6 线路的实际情况,一股脑儿走隧道反而大部分情况下效果更好。

    现在既然某个海外主机能把 TCP 链接请求发送到咱的地址上,那就说明这条路是通的,这个 TCP 会话的后续数据包就可以依旧走这条路由(也就是从 pppoe-out1 )直接回去。

    具体方法就是学习策略路由的方式,对这种包打标记:先对入口的包打连接标记,然后有这个标记的出口包就打上路由标记,强制走 pppoe-out1 。

    # 建立一个路由表,有这个标记的强制走 pppoe-out1, 绕过分流 /routing table add comment="No VPS" disabled=no fib name=DirectWAN /ipv6 route add comment=DirectVPS dst-address=::/0 gateway=pppoe-out1 routing-table=DirectWAN /routing rule add action=lookup-only-in-table routing-mark=DirectWAN table=DirectWAN # 然后是打标记 /ipv6 firewall mangle add action=mark-connection chain=prerouting comment="Out of China" connection-state=new in-interface-list=WAN new-connection-mark=DirectWAN protocol=tcp tcp-flags=syn /ipv6 firewall mangle add action=mark-routing chain=prerouting comment="Out of China" connection-mark=DirectWAN in-interface-list=LAN new-routing-mark=DirectWAN 

    由于移动宽带没有公网 IPv4, 这里就只写了 IPv6 的配置,v4 需要的话是完全一样的。

    仅供参考。欢迎提意见。

    1 条回复    2024-11-15 23:03:39 +08:00
    Naples
        1
    Naples  
       333 天前
    楼主用!CNList ,估计 wireguard 的 ipv6 链路应该很好,不知主机是哪家,本地 IPS 又是谁?

    另外,是一定要时刻通过隧道连接那台需要更新证书的 VPS 吗?不需要的话,直接在 OSPF 中排除或本地 route 中添加直连就行了,好过打标。

    我和你方案一样,BGP over wireguar over IPv6 ,!CNlist 也作了一些删减、整合。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1524 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 22ms UTC 16:36 PVG 00:36 LAX 09:36 JFK 12:36
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86