Autonomous System Number (ASN), tek bir yönetim biriminin denetimindeki, İnternet'e ortak ve açıkça tanımlanmış bir yönlendirme politikası sunan bir ağa ya da ağ topluluğuna, yani otonom sisteme (AS) atanan benzersiz bir tanımlayıcıdır. Proxy bağlamında bir proxy sunucusunun ASN'si; proxy sağlayıcısını belirlemek, proxy'nin kaynağını coğrafi olarak konumlandırmak ve ağ sahipliğine dayalı güvenlik politikaları uygulamak gibi çeşitli amaçlarla kullanılabilir.
Otonom sistemleri ve ASN'leri anlamak
Otonom sistem (AS), İnternet'in yönlendirme altyapısının kritik bir bileşenidir. Temelde bir İnternet servis sağlayıcısı (ISP), büyük bir kurum veya bir bulut sağlayıcısı gibi tek bir birim tarafından yönetilen büyük bir ağ ya da ağ topluluğudur. Bir AS'in temel özelliği, birleşik bir yönlendirme politikasına sahip olmasıdır; yani trafiği kendi ağı içinde nasıl yönlendireceğini ve İnternet'teki diğer ağlarla nasıl etkileşeceğini kendisi belirler.
Her AS'e benzersiz bir Autonomous System Number (ASN) atanır. Bu numara, farklı AS'lerin İnternet üzerinden yönlendirme bilgisini nasıl paylaştığını belirleyen yönlendirme protokolü olan Border Gateway Protocol (BGP) için hayati önemdedir. BGP, trafiğin hedef ağa ulaşmak için izlemesi gereken yolu belirlemek üzere ASN'leri kullanır.
ASN'ler nasıl atanır
ASN'ler, şu bölgesel İnternet kayıt kuruluşları (RIR'ler) tarafından atanır:
- ARIN: Kuzey Amerika
- RIPE NCC: Avrupa, Orta Doğu ve Orta Asya'nın bir bölümü
- APNIC: Asya-Pasifik bölgesi
- LACNIC: Latin Amerika ve Karayipler
- AfriNIC: Afrika
Bu RIR'ler her ASN'nin benzersiz olmasını ve tahsisin düzgün yönetilmesini sağlar. ASN talep eden kuruluşların genellikle belirli ölçütleri karşıladığını göstermesi gerekir; örneğin multi-homed bir ağa (en az iki başka AS'e bağlı) ve kendine özgü bir yönlendirme politikasına sahip olmak.
BGP'nin rolü
BGP, AS'ler arası yönlendirmenin temel taşıdır. AS'lerin ağ erişilebilirliklerini diğer AS'lere duyurmasına olanak tanır. Bir AS, komşu bir AS'ten BGP güncellemesi aldığında, belirli ağlara ulaşmak için kullanılabilecek yolları öğrenir. Ardından trafiği iletmek için en iyi yolu kendi yönlendirme politikasına göre seçer.
ASN'ler BGP'nin ayrılmaz bir parçasıdır, çünkü AS'ler arasında değiş tokuş edilen yönlendirme bilgisinin içinde yer alırlar. Bu sayede her AS, trafiğin izlediği yolu takip edebilir ve olası yönlendirme döngülerini ya da diğer sorunları tespit edebilir.
ASN'ler ve proxy sunucuları: pratik uygulamalar
Proxy'ler, istemciler ile hedef sunucular arasında aracı görevi görür. Bir proxy kullandığınızda trafiğiniz, proxy sunucusunun IP adresinden geliyormuş gibi görünür. Bu IP adresiyle ilişkili ASN değerli bilgiler sunar.
Proxy sağlayıcılarını belirleme
ASN, proxy sunucusunu işleten kuruluşu belirlemeye yardımcı olur. Proxy'nin IP adresiyle ilişkili ASN'yi sorgulayarak çoğu zaman proxy sağlayıcısını tespit edebilirsiniz (örneğin bir residential proxy hizmeti, bir veri merkezi proxy sağlayıcısı veya bir VPN hizmeti). Bu şunlar için işe yarar:
- Bir proxy hizmetinin meşruluğunu doğrulamak: saygın bir proxy sağlayıcısının kayıtlı bir ASN'si vardır.
- Proxy kaynaklı sorunları gidermek: sağlayıcıyı bilmek doğru destek kanallarına ulaşmanızı sağlar.
- Proxy altyapısını anlamak: veri merkezi proxy'lerinin ASN'leri genellikle veri merkezi sağlayıcılarına aitken, residential proxy'ler çoğunlukla ISP'lerle ilişkilidir.
Bir IP adresiyle ilişkili ASN'yi bulmak için whois gibi araçları veya çevrimiçi ASN sorgulama hizmetlerini kullanabilirsiniz.
whois <proxy_ip_address>
Çıktı genellikle ASN'yi (örneğin AS12345) ve onun sahibi olan kuruluşu içerir.
ASN tabanlı coğrafi konumlandırma
IP tabanlı konumlandırma kadar hassas olmasa da ASN, proxy'nin coğrafi konumu hakkında genel bir fikir verir. ASN'yi atayan RIR coğrafi olarak belirlidir (örneğin Kuzey Amerika için ARIN). Dolayısıyla ASN, proxy sunucusunun büyük olasılıkla bulunduğu bölgeyi gösterebilir. Bu şunlar için işe yarar:
- Proxy'nin ilan edilen konumunu doğrulamak: bir sağlayıcı belirli bir ülkede proxy sunduğunu iddia ediyorsa, ASN'yi kontrol ederek bu konumla örtüşüp örtüşmediğine bakabilirsiniz.
- Coğrafi erişim denetimleri uygulamak: trafiği proxy sunucusunun ASN'sine göre engelleyebilir veya izin verebilirsiniz.
- Olası dolandırıcılığı tespit etmek: beklenmedik bir ASN'den gelen trafik saptanırsa, bu sahtekârlık faaliyetine işaret edebilir.
Ancak ASN konumunun her zaman doğru olmadığını unutmayın; bazı kuruluşların ASN'leri, sunucularının fiziksel olarak bulunduğu bölgeden farklı bölgelerde kayıtlı olabilir. Daha yüksek hassasiyet için her zaman IP tabanlı coğrafi konumlandırma kullanın.
Güvenlik politikalarının uygulanması
ASN'ler, ağ sahipliğine dayalı güvenlik politikaları uygulamak için kullanılabilir. Örneğin şunları tercih edebilirsiniz:
- Bilinen kötü amaçlı ASN'lerden gelen trafiği engellemek: güvenlik şirketleri genellikle botnet'ler, spam gönderenler ve diğer kötü niyetli aktörlerle ilişkili ASN listeleri tutar.
- Güvenilir ASN'lerden gelen trafiğe öncelik vermek: güvendiğiniz ASN'lerden gelen trafiğe ayrıcalıklı davranabilirsiniz.
- Belirli ASN'lerden gelen trafiği izlemek: belirli faaliyet türleriyle ilişkili olduğu bilinen ASN'lerden gelen trafiği yakından izleyebilirsiniz.
Bu, güvenlik duvarlarında, saldırı tespit sistemlerinde ve diğer güvenlik cihazlarında uygulanabilir.
Proxy rotasyon stratejileri
Bazı gelişmiş proxy rotasyon stratejileri, kullanılan IP adreslerini çeşitlendirmek için ASN'lerden yararlanır. Amaç, hedef sitelerce tespit edilmekten ve banlanmaktan kaçınmaktır. Bu şunları içerebilir:
- Aynı ASN içindeki proxy'ler arasında rotasyon: tutarlı bir ağ kimliği korunurken bir miktar IP çeşitliliği sağlar.
- Farklı ASN'lerdeki proxy'ler arasında rotasyon: daha fazla IP çeşitliliği sunar, ancak birden fazla ASN'den gelen trafik şüpheli görünebileceği için tespit riskini de artırabilir.
Strateji seçimi, kullanım senaryosuna ve hedef sitenin proxy karşıtı önlemlerine bağlıdır.
Web scraping'de ASN filtreleme
Web scraping yaparken IP banlarından kaçınmak için proxy kullanmak hayati önemdedir. Bazı siteler, belirli barındırma sağlayıcılarından veya veri merkezlerinden yapılan scraping'i engellemek için ASN tabanlı engelleme uygular. Bu durumda, sıradan ISP'lere ait ASN'lere sahip residential proxy'ler kullanmak zorunlu hale gelir.
Python ile proxy'leri ASN'ye göre nasıl filtreleyebileceğinize dair bir örnek:
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}") # Burada herhangi bir ASN sorgulama API'si kullanın
response.raise_for_status() # Hatalı yanıtlarda (4xx veya 5xx) HTTPError fırlatır
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] # Proxy dizesinden IP'yi ayıklar
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
# Kullanım örneği:
proxy_list = ["http://user:[email protected]:8080", "http://user:[email protected]:8080", "http://user:[email protected]:8080"]
allowed_asns = ["AS12345", "AS67890"] # İzin vermek istediğiniz ASN'lerle değiştirin
filtered_proxies = filter_proxies_by_asn(proxy_list, allowed_asns)
print(f"Filtered proxies: {filtered_proxies}")
Önemli hususlar:
- ASN sorgulama API'si: kod
api.hackertarget.comkullanıyor. Bu yalnızca bir örnektir; ASN sorguları için daha sağlam ve güvenilir bir API bulmanız gerekebilir. Bazıları ücretsiz, bazıları ücretli birçok ASN sorgulama API'si mevcut. Kullanım limitlerini ve doğruluklarını kontrol edin. - Hata yönetimi: kod temel düzeyde hata yönetimi içeriyor, ancak ağ sorunları, API hataları ve geçersiz proxy formatlarıyla başa çıkmak için daha gelişmiş bir hata yönetimi eklemeniz gerekebilir.
- İstek limiti: seçtiğiniz ASN sorgulama API'sinin istek limitlerine dikkat edin. Engellenmemek için uygun gecikmeler veya önbellekleme uygulayın.
- Proxy formatı: kod belirli bir proxy formatını (
http://user:pass@ip:port) varsayar. Formatınız farklıysa kodu buna göre uyarlayın.
ASN ile IP adresi arasındaki temel farklar
| Özellik | ASN | IP adresi |
|---|---|---|
| Kapsam | Bir ağı veya kuruluşu temsil eder | Belirli bir cihazı veya arayüzü temsil eder |
| Benzersizlik | İnternet yönlendirme sistemi içinde benzersiz | Atandığı ağ içinde benzersiz |
| Konumlandırma | Genel bir coğrafi bölge verir | Daha kesin bir coğrafi konum verir |
| Yönlendirme | AS'ler arası yönlendirmede (BGP) kullanılır | Ağlar içinde paket iletiminde kullanılır |
| Atama | RIR'ler tarafından atanır | ISP'ler veya ağ yöneticileri tarafından atanır |
Sonuç
ASN'ler, proxy sunucu trafiğinin ağ kaynağı hakkında değerli bağlam sağlar. ASN'leri ve proxy bağlamında nasıl kullanıldıklarını anlamak; proxy seçimi, güvenlik politikaları ve gelişmiş proxy rotasyon stratejileri konusunda bilinçli kararlar vermenize yardımcı olur. ASN bilgisinden yararlanarak proxy kullanımınızın güvenilirliğini, güvenliğini ve etkinliğini artırabilirsiniz.
