V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hronro
V2EX  ›  路由器

请教个路由器 NAT 相关的问题

  •  
  •   hronro · 2022-02-21 17:17:18 +08:00 · 3157 次点击
    这是一个创建于 1010 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我之前用华硕路由器的时候,XBOX 显示 NAT 类型是开放,然后我电脑用 zerotier 打洞也能打洞成功。然而我并没有在华硕路由器里面为某台设备设置进行过相关的设置,按理说就算是 fullcone NAT 的话,也只能为路由器下的某一台设备设置成 fullcone NAT ,但现在来看好像路由器下所有的设备都有类似的效果?

    然后我换了一台 RouterOS 的路由器,也开启 uPNP 了,但结果是 XBOX 里显示 NAT 类型变成受限了,然后电脑上用 zerotier 打洞也不成功了。

    所以华硕路由器到底是用了什么黑科技?

    PS:本来我应该是自己先实验实验的,但迫于家里还有其他人要用网,我不好自己一个人霸着网做实验,所以先来请教一下 V 友看有没有对此比较了解的。

    8 条回复    2023-02-02 02:32:21 +08:00
    ScepterZ
        1
    ScepterZ  
       2022-02-21 17:26:00 +08:00
    按理说就算是 fullcone NAT 的话,也只能为路由器下的某一台设备设置成 fullcone NAT
    并不是这样的

    随便百度一下就可以得到:
    Full Cone NAT:所有来自同一个内部 Tuple X 的请求均被 NAT 转换至同一个外部 Tuple Y ,而不管这些请求是不是属于同一个应用或者是多个应用的。

    除此之外,当 X-Y 的转换关系建立之后,任意外部主机均可随时将 Y 中的地址和端口作为目标地址和目标端口,向内部主机发送 UDP 报文,由于对外部请求的来源无任何限制,因此这种方式虽然足够简单,但却不那么安全。

    很容易发现,这是路由器的整体策略,不是只对一台生效的

    你可能是再说 dmz (名字不一定记得对)之类的
    cpstar
        2
    cpstar  
       2022-02-21 17:29:54 +08:00
    窃以为,可能华硕路由器的 uPnP 做的比 RouterOS 好。你看一下 ASUS 上 uPnP 的开放情况吧。再对一下 RouterOS 上的。
    这个大概率使用 uPNP 搞定的,DMZ 的话,需要专门手动设置。实在不行就 ROS 上设置 DMZ 。
    cpstar
        3
    cpstar  
       2022-02-21 17:31:28 +08:00
    另外,我的认知,uPNP 是通过 UDP 协议让路由器知道客户机想做哪些端口映射,实际上还是在做 NAT 映射。
    wtfdsy
        4
    wtfdsy  
       2022-02-21 17:35:09 +08:00
    依稀记得华硕首页那个优化什么的是有游戏相关的,不过我华硕的路由有点怪,群晖的 NAT 映射经常过一段时间就失效,需要经常重新应用一下,换回 ERX 就好了
    hronro
        5
    hronro  
    OP
       2022-02-21 17:37:37 +08:00
    @ScepterZ #1

    确实,我脑子一下没转过来搞混了。

    RouterOS 作为一个“专业级”路由系统,却不支持 fullcone NAT ,感觉有点离谱。
    MonoLogueChi
        6
    MonoLogueChi  
       2022-02-21 18:36:02 +08:00 via Android
    先明确一下,nat 就是地址转换,是发生在路由器上的,是对路由器 nat 规则的设置,和下面的设备无关,没有说为某台设备单独设置成 full cone nat 这个说法。设置为完全锥形 nat 之后,从内网发数据出去,就会形成一个内网和端口对路由器 wan 口 IP 的某个端口的映射关系,这就形成了一个通道,而且是双向的,还有一个特点是不会验证来源 IP ,只要知道整个路由的 IP 和端口,从其他任意主机都可以访问。但是,这东西安全性是所有 nat 类型里最差的,一些主打安全的路由器会禁止使用
    xsourse
        7
    xsourse  
       2022-09-07 12:28:54 +08:00
    @hronro ROS 支持 fullcone 的,你在 IP - firewall - NAT 里面给你的 client 设置一个 src nat 到公网地址就好了
    IAPYANG
        8
    IAPYANG  
       2023-02-02 02:32:21 +08:00 via iPhone
    @MonoLogueChi 所以意思是有限服务端口进行路由器转发就好,比如 zerotier 就开放 9993 出去,这样的话安全些,不知道理解的对不对
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5460 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 09:13 · PVG 17:13 · LAX 01:13 · JFK 04:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.