本帖最后由 晏鼹鼠 于 2022-1-20 18:32 编辑
抓包发现,这种访问问题似乎跟BT的授权绑定有很大关系。
BT后台自动获取的外网IP是 SNAT IP 而不是DNAT IP。
当安装时SNAT IP和 DNAT IP 不同时,就有几率遇到各种访问调用的问题。
最常见的企业云架构为:服务器 网卡1 内网IP 1 网卡2 内网IP2 为统一出口,SNAT IP和 DNAT IP一般都是不同的IP 域名绑定的都是DNAT IP 而对外通信用的都是SNAT IP
1个DNAT IP 下 还存在多个 服务器,多个网卡 比如 NAT下挂负载均衡。
而同一服务器往往还有多网卡,用网卡区分内网线路和外网线路,但是很多人并不懂得设置网卡接口路由的优先级,或者为了方便,往往 多个网卡都允许通过SNAT对外访问公网,但是DNAT肯定只会指定到其中1个网卡。
这种场景下,就会出现,BT的2种授权绑定选项都无法完全满足需要的情况。
比如:默认为抓取公网IP,然后内网继承授权。这个时候抓取到的IP实际是SNAT的IP,而SNAT IP往往有多个的,每次访问随机选择1个出去的,不一定是安装时抓取到的那个。并且面板内绑定的域名解析IP都时DNAT IP,与SNAT IP 永远不会相同。
如果切换为不继承,多内网授权的情况。这个可以满足多数情况,但是有一种情况不行:
公网NAT下挂内网负载均衡的情况,这个时候,负载均衡的IP实际是内网IP,但是这个1个内网IP后面会存在服务器群集,多台服务器。
容器环境下,混合云架构,POD独立IP 也会存在问题。
所以,真正要满足需要的,必须是:多公网IP、多内网IP 混合同时存在,要允许授权,这才能完全符合所有情况。 最简单的办法就是直接抓取网卡的IP,只要网卡的IP不变,就当作不变。因为无论怎么重装系统、升级、改系统等等等等,网络底层的架构是极少数会变更的,也就是分配好的IP划分是极少会变的。以网卡上的IP为基准,相对来说,可以以不变应万变。
前提是,只是纯IP,不包含MAC。
以上是指企业级的架构,普通单机,一般都是NAT IP直接映射到了网卡,这种简单应用,就可以直接以公网IP为准。
|