OpenClash icon indicating copy to clipboard operation
OpenClash copied to clipboard

开启 OpenClash 影响NAT类型

Open Alano-i opened this issue 2 years ago • 7 comments

OpenWrt 已开启 全锥形 NAT OpenClash 关闭时,网心云上显示网络类型为映射公网 但是当启动 OpenClash ,就变成端口映射型了,降级了。

请问是设置不当还是本身存在bug?

Alano-i avatar Apr 19 '22 15:04 Alano-i

直连的会有这个问题,建议绕过国内

vernesong avatar Apr 19 '22 18:04 vernesong

直连的会有这个问题,建议绕过国内

使用的fake-ip增强模式,没有绕过国内。能不能取消掉UDP流量转发来实现啊,刚试了下不知道是时间太短没反应过来还是本身这种方法不行,网心那边还是端口限制型。 image

Alano-i avatar Apr 21 '22 05:04 Alano-i

一样,连接国外STUN服务器,关闭OpenClash立刻FullCone,开了OpenClash就变成PortRestrictedCone。即使在Clash规则里面让STUN直连也是一样,兼容模式和TUN模式都一样,试了下 Windows 上 Clash 没这个问题,OpenClash需要关闭UDP代理或者勾选“仅允许常用端口流量”,让STUN流量完全不走OpenClash才可以。

TGSAN avatar May 03 '22 16:05 TGSAN

在 OpenClash 的全局设置中开启 仅允许常用端口流量 即可。

AnzhiZhang avatar Jun 19 '22 08:06 AnzhiZhang

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

github-actions[bot] avatar Aug 19 '22 08:08 github-actions[bot]

看上去最新版本依然没解决这个问题的样子,如果需要STUN走代理的话就无解了(即使代理服务端已经是支持FullCone的情况)

TGSAN avatar Aug 19 '22 08:08 TGSAN

我的问题比较简单,就希望 UPnP 能正常使用,公网通过端口映射访问不走代理。但是现在访问不通,用的 miniupnp ,有人解决过这个问题吗?

link-duan avatar Aug 23 '22 11:08 link-duan

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

github-actions[bot] avatar Oct 23 '22 08:10 github-actions[bot]

最近试了在openclash里换上新版本的clash内核和meta内核,发现和之前一样,但是在单独使用这些版本内核的情况下nat可以fullcone

TGSAN avatar Oct 23 '22 11:10 TGSAN

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

github-actions[bot] avatar Dec 24 '22 08:12 github-actions[bot]

奇怪 我两台路由器同样的系统 都是clash内核 一个国外服务器direct可以继续fullcone 另一个不行

paladin4fan avatar Dec 25 '22 16:12 paladin4fan

大陆ip绕过核心模式,tun混合模式,国内外流量都能实现fullcone 大陆流量不绕过核心,同样设置的tun混合模式,国外流量仍可以实现fullcone,国内流量降为PortRestrictedCone

chelomei avatar Dec 26 '22 11:12 chelomei

大陆ip绕过核心模式,tun混合模式,国内外流量都能实现fullcone 大陆流量不绕过核心,同样设置的tun混合模式,国外流量仍可以实现fullcone,国内流量降为PortRestrictedCone

你的国外流量应该是走代理节点了 代理节点替你Fullcone的 如果是进了TUN内核又判定direct的国外流量 就会和不绕过核心的大陆流量一样被改成PortRestrictedCone 现在好像Tun模式是无解

paladin4fan avatar Dec 26 '22 16:12 paladin4fan

我的udp流量老是直连,开了全局也还是直连,请教是为什么呢

superdejavu avatar Dec 30 '22 17:12 superdejavu

大陆ip绕过核心模式,tun混合模式,国内外流量都能实现fullcone 大陆流量不绕过核心,同样设置的tun混合模式,国外流量仍可以实现fullcone,国内流量降为PortRestrictedCone

你的国外流量应该是走代理节点了 代理节点替你Fullcone的 如果是进了TUN内核又判定direct的国外流量 就会和不绕过核心的大陆流量一样被改成PortRestrictedCone 现在好像Tun模式是无解

兼容模式也会影响NAT,可能和TUN模式无关,另外试了下在Windows上带GUI的Clash客户端使用原版内核是可以FullCone的(但是Meta内核不行)

TGSAN avatar Jan 01 '23 17:01 TGSAN

大陆ip绕过核心模式,tun混合模式,国内外流量都能实现fullcone 大陆流量不绕过核心,同样设置的tun混合模式,国外流量仍可以实现fullcone,国内流量降为PortRestrictedCone

你的国外流量应该是走代理节点了 代理节点替你Fullcone的 如果是进了TUN内核又判定direct的国外流量 就会和不绕过核心的大陆流量一样被改成PortRestrictedCone 现在好像Tun模式是无解

兼容模式也会影响NAT,可能和TUN模式无关,另外试了下在Windows上带GUI的Clash客户端使用原版内核是可以FullCone的(但是Meta内核不行)

我用了三台同个固件的软路由试了下 只有一台兼容模式下对国外direct规则也是fullcone的 剩下两台啥内核都是降级 Meta内核每一台都是降级 NatTypeTester测试NAT3 PyStun3测试NAT2 不知道这个唯一一台成功的是为什么 是因为运营商还是因为我配了mwan3分流

paladin4fan avatar Jan 01 '23 19:01 paladin4fan

This issue is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 5 days

github-actions[bot] avatar Mar 03 '23 08:03 github-actions[bot]

同样遇到此问题,请问您最后是如何解决的,我是switch主机,关闭openclash是NAT A,打开走代理是NAT F,走直连是NAT B

jacobsenxin avatar Sep 03 '23 07:09 jacobsenxin

同样遇到此问题,请问您最后是如何解决的,我是switch主机,关闭openclash是NAT A,打开走代理是NAT F,走直连是NAT B

无解,只能让流量不要过OpenClash才可以,不过NAT F应该是节点问题

TGSAN avatar Sep 17 '23 14:09 TGSAN

可以增加一个代理绕过端口的功能吗,类似于passwall,把stun的流量给绕过。我用的的redir-host兼容模式meta核,使用natmap只有把指定的tcp stun服务器的ip添加到本地ip地址绕过才可以打洞成功(udp的不需要,可以直接打成功,并且观察到开启openclash,tcp只有80和443可以打成功),或者openclash延迟启动,等打完洞再启动。。。。

0daysseus avatar Sep 21 '23 14:09 0daysseus

可以增加一个代理绕过端口的功能吗,类似于passwall,把stun的流量给绕过。我用的的redir-host兼容模式meta核,使用natmap只有把指定的tcp stun服务器的ip添加到本地ip地址绕过才可以打洞成功(udp的不需要,可以直接打成功,并且观察到开启openclash,tcp只有80和443可以打成功),或者openclash延迟启动,等打完洞再启动。。。。

之前有开一个新的issue #3480 里面是希望可以单独指定TCP或者UDP的那些端口需要走内核

TGSAN avatar Sep 23 '23 11:09 TGSAN

在 OpenClash 插件设置 - 开发者选项,加入这两条 nftables 规则,把所有 STUN 流量绕过即可(3478-3497 是苹果 FaceTime 的 STUN 端口范围)

nft insert rule inet fw4 openclash_mangle position 0 meta nfproto ipv4 udp dport 3478-3497 counter return
nft insert rule inet fw4 openclash_mangle_v6 position 0 meta nfproto ipv6 udp dport 3478-3497 counter return

stackia avatar Jan 28 '24 05:01 stackia

在 OpenClash 插件设置 - 开发者选项,加入这两条 nftables 规则,把所有 STUN 流量绕过即可(3478-3497 是苹果 FaceTime 的 STUN 端口范围)

nft insert rule inet fw4 openclash_mangle position 0 meta nfproto ipv4 udp dport 3478-3497 counter return
nft insert rule inet fw4 openclash_mangle_v6 position 0 meta nfproto ipv6 udp dport 3478-3497 counter return

问题是很多需求fullcone的人是用来打游戏的 而游戏是不是用的标准stun端口呢

paladin4fan avatar Jan 28 '24 09:01 paladin4fan

除了标准的 STUN,大多数 p2p 协议从设计上都会使用 3478 附近端口来打洞,因为很多防火墙在 3478 上比较宽松。 我观察到的有:FaceTime、HomeKit Secure Video、微信视频聊天、Steam/PS/Xbox Networking(大多数游戏底层使用)、Zoom、Teams、Google Meet、GTA5、Parsec 等。

stackia avatar Jan 28 '24 11:01 stackia

新版加了tun的接口,nat应该没问题

vernesong avatar Jan 28 '24 12:01 vernesong

新版用tun udp模式 判定direct的流量好像还是被降级nat


From: vernesong @.> Sent: Sunday, January 28, 2024 8:30:33 PM To: vernesong/OpenClash @.> Cc: paladin4fan @.>; Comment @.> Subject: Re: [vernesong/OpenClash] 开启 OpenClash 影响NAT类型 (Issue #2288)

新版加了tun的接口,nat应该没问题

― Reply to this email directly, view it on GitHubhttps://github.com/vernesong/OpenClash/issues/2288#issuecomment-1913580446, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AIHATRE4MI2T5BBLZT4TNGLYQZAGTAVCNFSM5TZIVM42U5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TCOJRGM2TQMBUGQ3A. You are receiving this because you commented.Message ID: @.***>

paladin4fan avatar Jan 28 '24 12:01 paladin4fan

新版加了tun的接口,nat应该没问题

试了下新版本tun接口可以让命中代理链的流量正常变为FullCone了,但是奇怪的是命中DIRECT的流量反而变成了PortResCone

TGSAN avatar Feb 05 '24 18:02 TGSAN

直连的没办法

vernesong avatar Feb 06 '24 07:02 vernesong

即使打了FullCone NAT的补丁也没办法吗,不过代理可以FullCone应该可以本机开代理服务然后DIRECT规则连本机了。辛苦作者开发了,感谢!

TGSAN avatar Feb 06 '24 07:02 TGSAN

可以试试开启 clash meta 的 endpoint-independent-nat https://wiki.metacubex.one/config/inbound/tun/#endpoint-independent-nat

stackia avatar Feb 06 '24 08:02 stackia