Tóm tắt
Mỗi IP có thể truy cập từ Internet công cộng đều có một AS (Autonomous System — hệ thống tự trị) "quảng bá" nó trong BGP, và số hiệu của AS đó chính là ASN. Điểm mấu chốt: ASN không có được nhờ đăng ký ở đâu đó — nó được một AS nào đó quảng bá trong bảng định tuyến BGP toàn cầu. Vì vậy khi một dải IP chưa từng được AS nào quảng bá (mạng chuyên dụng, phân đoạn nội bộ, vừa được cấp phát nhưng chưa đưa vào hoạt động, hoặc chỉ nằm trong một thông báo gộp lớn hơn ở phía upstream), nó không có origin ASN trong bảng định tuyến toàn cầu — các cơ sở dữ liệu như MaxMind / IPinfo đương nhiên cũng không tìm ra, và chỉ có thể lấy "tên tổ chức" đã đăng ký từ whois. Đây không phải lỗi của cơ sở dữ liệu — bản thân dải IP đó thực sự không có ASN.
1. ASN "gắn" vào một IP như thế nào
Nhiều người cho rằng ASN là một thuộc tính cố định được "cấp" cho IP, giống như số nhà. Thực ra nó là một thực tế định tuyến mang tính động. Để một dải IP có ASN, nó phải đi qua chuỗi sau:
- ① Cấp phát — IANA giao các khối địa chỉ lớn cho năm RIR (APNIC phụ trách châu Á – Thái Bình Dương), rồi mỗi RIR đăng ký các prefix như
/19hoặc/24cho một tổ chức. Bước này chỉ tạo ra bản ghi đăng ký whois — chưa có ASN. - ② Quảng bá — tổ chức đó (hoặc ISP upstream của họ) dùng AS của chính mình để "quảng bá" qua BGP tới các router lân cận: "hãy định tuyến
113.48.0.0/19qua tôi." - ③ Origin ASN ra đời — số hiệu của AS đã quảng bá prefix này trở thành origin ASN của dải đó. Các bảng định tuyến (RIB) trên toàn thế giới sẽ ghi lại: prefix này bắt nguồn từ AS××××.
Vì vậy bản chất của ASN là "ai đang định tuyến dải IP này", chứ không phải "ai sở hữu dải IP này". Nếu bước ② không xảy ra thì bước ③ không tồn tại — dải đó sẽ không bao giờ tra ra ASN.
Tóm lại: không có tuyến được quảng bá qua BGP = không có ASN. ASN là một thực tế được ghi trong bảng định tuyến, không phải một trường trong sổ đăng ký.
2. Vì sao một số IP không có ASN — bốn trường hợp thường gặp
| Trường hợp | Mô tả | Tình huống điển hình |
|---|---|---|
| Tuyến chưa quảng bá | Dải IP đã được cấp phát, nhưng bên nắm giữ không bao giờ quảng bá nó ra bảng BGP công cộng (chỉ dùng nội bộ / qua đường truyền riêng) | Mạng chuyên dụng của chính phủ/doanh nghiệp, một số phân đoạn nội bộ của IDC, mạng chuyên ngành |
| Quảng bá gộp | Upstream chỉ quảng bá một khối lớn hơn bao trùm; khối con không có origin độc lập của riêng mình | Một nhà mạng lớn gộp /24 vào /16 rồi quảng bá khối gộp |
| Mới cấp phát, chưa hoạt động | RIR vừa giao prefix cho tổ chức, nhưng prefix đó chưa được đưa vào BGP | Khối địa chỉ mới xin cấp, định tuyến chưa được cấu hình |
| Dành riêng / mục đích đặc biệt | Địa chỉ không định tuyến được trên toàn cầu (private, tài liệu, CGNAT, v.v.) | 10.0.0.0/8, 100.64.0.0/10, 192.0.2.0/24 |
Hai trường hợp này dễ gây nhầm lẫn, nhưng biểu hiện rất khác nhau: IP nằm trong một khối gộp vẫn truy cập được (khối lớn có tuyến) và chỉ thiếu origin ASN của riêng nó, còn IP chưa từng được quảng bá thì hoàn toàn không truy cập được từ Internet công cộng — ping nó sẽ mất 100% gói — dù whois vẫn hiển thị tổ chức đã đăng ký. Điểm chung là cả hai đều không có origin của riêng mình trong bảng BGP toàn cầu.
3. Tự kiểm chứng — xác nhận "thực sự không có ASN" bằng các nguồn BGP có thẩm quyền
Cơ sở dữ liệu định vị không tìm ra ASN chưa chắc có nghĩa là IP thực sự không có — có thể chỉ là độ phủ của cơ sở dữ liệu đó chưa đầy đủ. Để có kết luận, bạn cần hỏi chính bảng định tuyến BGP toàn cầu. Dưới đây là hai nguồn có thẩm quyền, miễn phí và tự tra được:
3.1 RIPEstat — đọc trực tiếp bảng định tuyến toàn cầu
RIPEstat của RIPE NCC tổng hợp dữ liệu từ các điểm thu thập BGP trên toàn thế giới. Để tra origin ASN của một IP:
$ curl -s "https://stat.ripe.net/data/network-info/data.json?resource=113.48.177.6"
{
"data": {
"prefix": "", // ← rỗng: không có prefix nào bao phủ nó
"asns": [] // ← rỗng: không có origin ASN
}
}asns: [] — một mảng rỗng. Trong bảng định tuyến toàn cầu không có AS nào đang quảng bá IP này. Đây là bằng chứng mang tính kết luận.
3.2 Team Cymru — dịch vụ whois IP-to-ASN
Team Cymru duy trì dịch vụ ánh xạ IP→ASN được dùng rộng rãi nhất trong ngành, cũng dựa trên BGP:
$ whois -h whois.cymru.com " -v 113.48.177.6"
AS | IP | BGP Prefix | CC | Registry | Allocated | AS Name
NA | 113.48.177.6 | NA | CN | apnic | 2008-10-16 | NAAS = NA, BGP Prefix = NA. Hãy để ý phía bên phải: Registry = apnic, Allocated = 2008-10-16 — dải IP này đã được APNIC cấp cho Trung Quốc từ năm 2008 (vì vậy có mã quốc gia CN), nhưng nó chưa từng được đưa vào BGP, nên AS là NA. "Đã cấp phát" và "có ASN" là hai chuyện hoàn toàn khác nhau — ví dụ này cho thấy sự khác biệt đó rất rõ ràng.
4. Vậy cái tên như "China Great Wall Internet Server Provider" từ đâu mà có?
Nếu không có ASN, vì sao kết quả tra cứu IP vẫn hiển thị được tên công ty? Vì tên và ASN đến từ hai bộ dữ liệu hoàn toàn khác nhau:
- ASN / asn_org — lấy từ bảng định tuyến BGP (ai đang định tuyến dải IP này). Không được quảng bá thì không có giá trị.
- ISP / tên tổ chức trong whois — lấy từ sổ đăng ký inetnum / liên hệ báo cáo lạm dụng của RIR (ai được đăng ký là bên nắm giữ dải này). Kể cả khi chưa từng vào BGP, bản ghi đăng ký vẫn tồn tại.
Một số nguồn dữ liệu trả về trường isp (ví dụ China Great Wall Internet Server Provider hoặc Beijing Big Data Tech Co.,Ltd.). Đây là tên tổ chức đăng ký trong whois, không phải trường org của ASN. Vì vậy việc thấy tổ hợp "có tên nhưng không có số ASN" là hoàn toàn bình thường.
Cái tên trả lời câu hỏi "ai đã đăng ký dải IP này"; ASN trả lời câu hỏi "AS nào định tuyến nó". Có cái này mà thiếu cái kia không hề mâu thuẫn.
5. Ảnh hưởng đến thông tin tình báo IP và việc tra cứu
Trường ASN trong các cơ sở dữ liệu IP thương mại về bản chất là ảnh chụp của bảng định tuyến BGP. Khi một IP không có origin ASN:
- Mọi cơ sở dữ liệu dựa vào BGP đều không đưa ra được ASN — đây là điểm mù chung ở cấp nguồn dữ liệu, không phải sơ suất của riêng nhà cung cấp nào.
- Thứ duy nhất có được là tên tổ chức đăng ký trong whois (nếu có).
- Các phân loại dựa trên ASN (loại nhà mạng, có phải datacenter hay không, phân cụm rủi ro) sẽ kém chính xác đi với các IP này, và bạn chỉ còn dựa được vào các khía cạnh khác như tên tổ chức, vị trí địa lý hoặc hành vi.
Vì vậy khi tra một IP thuộc loại này trên CleanIP.io, bạn sẽ thấy tên tổ chức vẫn hiển thị như bình thường, còn trường ASN để trống — điều này phản ánh đúng thực tế "dải IP này thực sự không có ASN trong bảng định tuyến toàn cầu", chứ không phải tra cứu thất bại. Trong trường hợp này, chỉ cần dựa vào tên tổ chức, quốc gia sở hữu và các tín hiệu rủi ro — cột ASN để trống là bình thường.
Tài liệu tham khảo
- RFC 4271 — A Border Gateway Protocol 4 (BGP-4)Bản thân giao thức BGP: định nghĩa về quảng bá prefix / AS-PATH / origin
- RIPEstat Data API — network-infoCông cụ chính thức của RIPE NCC để tự tra prefix / origin ASN của bất kỳ IP nào
- Team Cymru — IP to ASN MappingDịch vụ whois IP→ASN được dùng phổ biến nhất trong ngành, dựa trên BGP
- IANA — IPv4 Address Space RegistryNguồn gốc của việc cấp phát địa chỉ (RIR) và "có được định tuyến hay không" là hai chuyện riêng biệt