Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

auto-update分支下的ASN规则会匹配Akamai流量,建议排除 #32

Open
im-Kalix opened this issue Feb 9, 2023 · 4 comments
Open

Comments

@im-Kalix
Copy link

im-Kalix commented Feb 9, 2023

流量截图
考虑到连www.akamai.com的解析IP都是国内本地ASN的IP,我认为可以把来自Akamai的ASN完全排除出此列表。
拨测解析结果

@im-Kalix
Copy link
Author

im-Kalix commented Feb 9, 2023

根据IPIP的查询结果,甚至没有来自中国IP的记录,这是BUG吧?(那个中国国旗是台湾)
image

@Yuiinars
Copy link
Collaborator

Yuiinars commented Feb 9, 2023

首先,感谢您能帮助发现问题和建议问题,这是好的。

但我并没有错,下面是我的详细说明:

不绝对可信的 WHOIS

但是,我们首先要清楚一点,那就是 WHOIS信息 并不绝对可信

公网BGP全球路由表每秒都在更新路由信息,而WHOIS的信息通常是由资源所有方自行修改的,并不能及时准确地反映实时的路由信息

你可能会被我说得有点晕,但是我可以举一个例子:

  • 2a0d:2587:88b2::/48

你可以在 WHOIS 或者 IP库 中查询这段IP前缀,会发现他们都会把这段IP指向 Antarctica (AQ) 这个地区,也就是南极洲。
但是很显然,截止目前,南极洲上并没有任何机房网络资源,这很奇怪对吧?

答案是 我用自己的 ASN 广播了这个整蛊性质的IP前缀。
而让这段IP的归属地变成“南极洲”的方法很简单,就是去WHOIS服务器中将这段IP前缀的地区代码 自行修改 成了 AQ

解开 IP-ASN.China 规则之谜

让我们把话题回到 Akamai (AS20940) 为什么会被加到 IP-ASN.China 列表:

首先,我们引入几个概念:

IP Prefix (IP前缀): 指一段IP范围,通常带有 CIDR。 例如: 1.0.0.0/24 2a09::/48
AS PATH (AS路径): 顾名思义,就是一个AS自治域到另一个AS自治域所需要经过的AS自治域列表,一个例子: 4809 4134 4837 9808 就是表示 起点 AS4809 到 终点 AS9808 需要经过 AS4134AS4837

我先来大概描述一下 IP-ASN.China 的筛选机制

如果 AS PATH 中包含有 4134(电信) 4837(联通) 9808(移动) ... 
则提取 AS PATH 终点 ASN 至 IP-ASN.China 列表

而下列IP段则是 Akamai (AS20940) 命中规则的关键因素

184.50.92.0/23
184.50.87.0/24
184.50.90.0/23
69.192.8.0/21
23.77.214.0/23
23.13.184.0/21
23.42.176.0/20

这些IP段的 AS PATH 都包含着 AS4837, 则中国联通在境内使用的AS自治域,所以根据上列规则,将会被纳入 IP-ASN.China 列表。

拓展理解

  • 为什么要选择 AS4134 AS4837 AS9808 等ASN作为筛选条件?
    因为这些骨干网 ASN 一般只在境内段使用,若出现则代表大概率在国内广播。

  • 那为什么Akamai明明没有在国内广播,AS PATH 中却有 AS4837 骨干网ASN?
    当然,这些是一些罕见的例外:他们可能购买了中国联通的境内路由优化服务,或者泄露路由了。

@VirgilClyne VirgilClyne pinned this issue Feb 9, 2023
@cherinyy
Copy link

这些IP段的 AS PATH 都包含着 AS4837, 则中国联通在境内使用的AS自治域,所以根据上列规则,将会被纳入 IP-ASN.China 列表。

那么既然我们知道这个 ASN 实际上没有接入中国内地网络,甚至知道只有特定的 IP 段可能购买了“中国联通的境内路由优化服务”,能否对其进行细化而将大部分 IP 段排除出列表呢?

@Yuiinars
Copy link
Collaborator

@wordlesswind 那么既然我们知道这个 ASN 实际上没有接入中国内地网络,甚至知道只有特定的 IP 段可能购买了“中国联通的境内路由优化服务”,能否对其进行细化而将大部分 IP 段排除出列表呢?

您的想法确实是对的,但是这并不符合 IP-ASN.China 的创建初衷,如果您想要得到一份完全没有任何位于中国大陆外设施的中国境内优化服务的IP范围,您可以前往 https://github.com/misakaio/chnroutes2 获取,他们拥有更多的网络资源和精力维护一个实时地IP范围列表。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants