Автономний номер системи (ASN) – це унікальний ідентифікатор, присвоєний автономній системі (AS), яка є мережею або сукупністю мереж під єдиною адміністративною одиницею, що представляє спільну, чітко визначену політику маршрутизації для Інтернету. У контексті проксі-серверів, ASN проксі-сервера може використовуватися для різних цілей, включаючи ідентифікацію постачальника проксі, геолокацію походження проксі та впровадження політик безпеки на основі власності мережі.
Розуміння автономних систем та ASN
Автономна система (AS) є критично важливим компонентом маршрутизаційної інфраструктури Інтернету. По суті, це велика мережа або сукупність мереж, керованих єдиною організацією, такою як Інтернет-провайдер (ISP), велика організація або хмарний провайдер. Ключовою характеристикою AS є те, що вона має єдину політику маршрутизації, тобто вона визначає, як маршрутизуватиме трафік у своїй власній мережі та як взаємодіятиме з іншими мережами в Інтернеті.
Кожній AS присвоюється унікальний Автономний номер системи (ASN). Цей номер є вирішальним для Border Gateway Protocol (BGP), протоколу маршрутизації, який регулює обмін маршрутизаційною інформацією між різними AS в Інтернеті. BGP використовує ASN для ідентифікації шляху, яким трафік повинен пройти, щоб досягти цільової мережі.
Як присвоюються ASN
ASN присвоюються регіональними інтернет-реєстраторами (RIR), такими як:
- ARIN: Північна Америка
- RIPE NCC: Європа, Близький Схід та частини Центральної Азії
- APNIC: Азіатсько-Тихоокеанський регіон
- LACNIC: Латинська Америка та Карибський басейн
- AfriNIC: Африка
Ці RIR забезпечують унікальність кожного ASN та належне управління розподілом. Організації, що запитують ASN, зазвичай повинні продемонструвати відповідність певним критеріям, таким як наявність мульти-хостингової мережі (підключеної щонайменше до двох інших AS) та чіткої політики маршрутизації.
Роль BGP
BGP є наріжним каменем між-AS маршрутизації. Він дозволяє AS рекламувати свою доступність мережі іншим AS. Коли AS отримує оновлення BGP від сусідньої AS, вона дізнається про шляхи, які можуть бути використані для досягнення конкретних мереж. Потім AS використовує свою власну політику маршрутизації для вибору найкращого шляху для пересилання трафіку.
ASN є невід'ємною частиною BGP, оскільки вони включені в інформацію про маршрутизацію, що обмінюється між AS. Це дозволяє кожній AS відстежувати шлях, яким пройшов трафік, та виявляти потенційні петлі маршрутизації або інші проблеми.
ASN та проксі-сервери: Практичне застосування
Проксі діють як посередники між клієнтами та цільовими серверами. При використанні проксі ваш трафік виглядає так, ніби він походить з IP-адреси проксі-сервера. ASN, пов'язаний з цією IP-адресою, надає цінну інформацію.
Ідентифікація постачальників проксі
ASN може допомогти ідентифікувати організацію, що керує проксі-сервером. Завдяки пошуку ASN, пов'язаного з IP-адресою проксі, ви часто можете визначити постачальника проксі (наприклад, службу резидентних проксі, постачальника проксі-серверів для центрів обробки даних або службу VPN). Це може бути корисно для:
- Перевірки легітимності проксі-сервісу: Надійний постачальник проксі матиме зареєстрований ASN.
- Вирішення проблем, пов'язаних з проксі: Знання постачальника може допомогти вам зв'язатися з відповідними каналами підтримки.
- Розуміння інфраструктури проксі: Проксі-сервери центрів обробки даних зазвичай мають ASN, пов'язані з постачальниками центрів обробки даних, тоді як резидентні проксі часто пов'язані з інтернет-провайдерами.
Ви можете використовувати такі інструменти, як whois або онлайн-сервіси пошуку ASN, щоб знайти ASN, пов'язаний з IP-адресою.
whois <proxy_ip_address>
Вивід зазвичай включатиме ASN (наприклад, AS12345) та організацію, яка ним володіє.
Геолокація на основі ASN
Хоча ASN не такий точний, як геолокація на основі IP, він може дати загальне уявлення про географічне розташування проксі. RIR, який призначив ASN, є географічно специфічним (наприклад, ARIN для Північної Америки). Тому ASN може вказувати регіон, де, ймовірно, розташований проксі-сервер. Це може бути корисно для:
- Перевірки заявленого розташування проксі: Якщо постачальник проксі стверджує, що пропонує проксі в певній країні, ви можете перевірити ASN, щоб побачити, чи відповідає він цьому розташуванню.
- Впровадження географічних контролів доступу: Ви можете блокувати або дозволяти трафік на основі ASN проксі-сервера.
- Виявлення потенційного шахрайства: Якщо виявлено трафік, що походить з несподіваного ASN, це може вказувати на шахрайську діяльність.
Однак важливо зазначити, що розташування ASN не завжди є точним, оскільки деякі організації можуть мати ASN, зареєстровані в інших регіонах, ніж ті, де фізично розташовані їхні сервери. Завжди використовуйте геолокацію на основі IP для більшої точності.
Впровадження політик безпеки
ASN можуть використовуватися для впровадження політик безпеки на основі власності мережі. Наприклад, ви можете:
- Блокувати трафік від відомих шкідливих ASN: Компанії з безпеки часто ведуть списки ASN, пов'язаних з ботнетами, спамерами та іншими шкідливими акторами.
- Пріоритизувати трафік від довірених ASN: Ви можете надавати перевагу трафіку, що походить від ASN, яким ви довіряєте.
- Моніторити трафік від конкретних ASN: Ви можете ретельно моніторити трафік, що походить від ASN, які, як відомо, пов'язані з певними типами діяльності.
Це може бути реалізовано у брандмауерах, системах виявлення вторгнень та інших пристроях безпеки.
Стратегії ротації проксі
Деякі передові стратегії ротації проксі використовують ASN для диверсифікації використовуваних IP-адрес. Мета полягає в тому, щоб уникнути виявлення та блокування цільовими веб-сайтами. Це може включати:
- Ротацію між проксі в межах одного ASN: Це забезпечує певну ступінь різноманітності IP, зберігаючи при цьому послідовну мережеву ідентичність.
- Ротацію між проксі з різних ASN: Це пропонує більшу різноманітність IP, але також може збільшити ризик виявлення, оскільки трафік, що походить з кількох ASN, може виглядати підозрілим.
Вибір стратегії залежить від конкретного випадку використання та заходів протидії проксі цільового веб-сайту.
Фільтрація ASN у веб-скрейпінгу
При веб-скрейпінгу використання проксі є життєво важливим, щоб уникнути блокування IP. Деякі веб-сайти можуть впроваджувати блокування на основі ASN, щоб запобігти скрейпінгу від конкретних хостинг-провайдерів або центрів обробки даних. У цьому випадку використання резидентних проксі з ASN, що належать звичайним інтернет-провайдерам, стає необхідним.
Ось приклад того, як ви можете фільтрувати проксі на основі ASN за допомогою Python:
import requests
import json
def get_asn(ip_address):
"""Retrieves the ASN for a given IP address."""
try:
response = requests.get(f"https://api.hackertarget.com/aslookup/?q={ip_address}") #Use any ASN lookup API here
response.raise_for_status() # Raise HTTPError for bad responses (4xx or 5xx)
asn_data = response.text.strip()
if "No ASN Record found" in asn_data:
return None
return asn_data
except requests.exceptions.RequestException as e:
print(f"Error fetching ASN: {e}")
return None
def filter_proxies_by_asn(proxy_list, allowed_asns):
"""Filters a list of proxies, keeping only those with allowed ASNs."""
filtered_proxies = []
for proxy in proxy_list:
try:
ip_address = proxy.split('@')[1].split(':')[0] #Extract IP from proxy string
asn = get_asn(ip_address)
if asn and asn in allowed_asns:
filtered_proxies.append(proxy)
except Exception as e:
print(f"Error processing proxy {proxy}: {e}")
return filtered_proxies
# Example usage:
proxy_list = ["http://user:pass@1.2.3.4:8080", "http://user:pass@5.6.7.8:8080", "http://user:pass@9.10.11.12:8080"]
allowed_asns = ["AS12345", "AS67890"] # Replace with the ASNs you want to allow
filtered_proxies = filter_proxies_by_asn(proxy_list, allowed_asns)
print(f"Filtered proxies: {filtered_proxies}")
Важливі міркування:
- API для пошуку ASN: Код використовує
api.hackertarget.com. Це лише приклад, і вам може знадобитися знайти більш надійний та стабільний API для пошуку ASN. Доступно багато API для пошуку ASN, деякі безкоштовні, деякі платні. Перевірте їхні ліміти використання та точність. - Обробка помилок: Код включає базову обробку помилок, але вам може знадобитися додати більш складну обробку помилок для вирішення проблем з мережею, помилок API та недійсних форматів проксі.
- Обмеження частоти запитів: Пам'ятайте про обмеження частоти запитів API для пошуку ASN, який ви обираєте. Впроваджуйте відповідні затримки або кешування, щоб уникнути блокування.
- Формат проксі: Код передбачає певний формат проксі (
http://user:pass@ip:port). Змініть код, якщо ваш формат проксі відрізняється.
ASN проти IP-адреси: Ключові відмінності
| Характеристика | ASN | IP-адреса |
|---|---|---|
| Область дії | Представляє мережу або організацію | Представляє конкретний пристрій або інтерфейс |
| Унікальність | Унікальний в системі маршрутизації Інтернету | Унікальний в межах призначеної мережі |
| Геолокація | Надає загальний географічний регіон | Надає більш точне географічне розташування |
| Маршрутизація | Використовується для між-AS маршрутизації (BGP) | Використовується для доставки пакетів в мережах |
| Призначення | Призначається RIR | Призначається інтернет-провайдерами або мережевими адміністраторами |
Висновок
ASN надають цінний контекст щодо мережевого походження трафіку проксі-сервера. Розуміння ASN та того, як вони використовуються в контексті проксі, може допомогти вам приймати обґрунтовані рішення щодо вибору проксі, політик безпеки та передових стратегій ротації проксі. Використовуючи інформацію ASN, ви можете покращити надійність, безпеку та ефективність використання проксі.