IP adresi sızdırma / yerel makinede test için değişen

6 Cevap php

Ben veri kitle miktarda ekrandan veri için çalışan insanlar bir süre sonra bloke olacak şekilde web siteme trafik sınırlamak çalışıyorum. Gelen istekleri IP'lere dayanan bu yapacağım. Ben IP-sınırlayıcı işlevselliği yazılı var ama, ben bunu test edebilirsiniz nasıl stumped inanıyorum. Ben geçerli trafik simülasyonu, benim IP adresi birçok kez değiştirmek gerekiyor. Ben de> 20 farklı IP'ler test etmek gerekir, böylece her biri için bir proxy çözüm benim için çalışmaz.

Benim yerel makinede (Ubuntu çalıştıran) üzerindeki kodu test ediyorum bu yüzden bu test için gerekirse benim sunucu ayarlarını (Apache) değiştirebilirsiniz.

Ben bu yüzden yeni bir IP "re-atanmış" olmak üzere MAC adresi / ARP ayarlarını değiştirmek değil, kurumsal bir ağ arkasında değilim. Ben localhost IP değişen tipi şey çeşit umuyordum, bu yüzden sunucu ve istemci aynı makine olduğu gerçeği yararlanmak.

Ayrıca, ben üretim sunucularına dışarı haddelenmiş önce kodunu değiştirmeyi önlemek için çalışıyordu, ama bunu yapmak için en iyi yol olabilir.

Bunu nasıl kurabilirsiniz?

6 Cevap

Peki, ne yapabilirdi yerine aslında IP böyle bir şey yapmak kontrol biridir:

$ip = '1337.1337.1337.1337';

Yerine:

$ip = $_SERVER['REMOTE_ADDR']

Ve sonra IP kontrol kodunuzu yapmak için gitmek.

İşiniz bittiğinde Peki o zaman bu gibi $ ip değişken kod bakmak yapabilir:

//$ip = '1337.1337.1337.1337';
$ip = $_SERVER['REMOTE_ADDR']

Böylece kolaylıkla ve "hata ayıklama anahtarı" kapatabilirsiniz

EDIT:

Ya da IP dinamik olun:

$ips = Array('192.168.1.220', '120.843.592.86', '256.865.463.563');
$ip = $ips[rand(1,count($ips)-1)];

Kolayca linux üzerinde aşağıdaki komutu çalıştırarak yapabilirsiniz:

ifconfig eth0:0 127.0.0.2
ifconfig eth0:1 127.0.0.3
etc... (creating fake local interfaces)

Eğer 0.0.0.0 (tüm arabirimler) dinleme değilseniz bu IP'lere dinlemek için apache yapılandırmanız gerekebilir, o zaman doğrudan bu IP'ler erişebilirsiniz.

Diğer IP'leri kullanmak istiyorsanız, kolayca da bunu, ama testler yapılır sonra bunları kaldırmak için hatırlıyorum.

Bu yalnızca yerel makineden yerel makineye çalışacaktır.

Eğer bu test edebilirsiniz birçok yolu vardır. Kolay yolu imo IP sunucunun MAC adresine gelin taklit edilir adresleri ARP girişlerinin listesini oluşturmak olacaktır. Daha sonra, bürünülmüş IP adreslerinin her src adresini ayarlar basit bir uygulama yazmak bağlamak ve istediğiniz her türlü HTTP istek gönderebilir. Sunucu sadece iyi cevap olmalıdır.

Bu sizin için ne arıyorsanız eğer tam olarak emin değilim, ama benim üniversitede bir indirme kotası almak için yeni bir IP alabilir böylece benim MAC adresini sızdırarak vardı. MAC değiştirme, yeni bir IP sonuçlandı. sadece doğru seçeneği (rasgele için "-r") ile bu çalıştırın ve daha sonra aygıtı belirlemek "macchanger" denilen standart ubuntu depolarında bir program var. gibi pek.

sudo macchanger -r eth0

Ağ bunu yaparken devre dışı bırakılması gerekir. sağ ağ simgesini tıklayarak ve "ağ yaratmak" kutucuğunu işaretleyerek yapabilirsiniz.

Sen duvarı düzeyinde (eğer ev sahibi bir SW güvenlik duvarı daha corp sınır güvenlik duvarı) bu yaptığını düşünebilirsiniz. Eğer sadece uygulama düzeyinde onları sınırlayan eğer bir taciz konak hala performansını yerinde aşağı çekmek ya da etkileyebilecek pek çok durum vardır. Eğer onları reddetme sona olsa bile hala ve web sunucusu işçi iş parçacığı üzerinde yuva tüketiyoruz. Hatta IP kontrol önce bazı gideri olan bazı kod olabilir. Bu gerçekten tüm uygulama nasıl hafif bağlıdır, ama bir şey donanım veya sw, yol daha verimli uygulama can daha asi müşterilerine engelleyebilirsiniz olsun, bir güvenlik duvarı, emin olabilirsiniz.

Bu cevap bu uygulama için muhtemelen overkill, ama tcpdump / libpcap, winpcap kullanarak gibi, ve trafik üretmek için ham yuva. Eğer uygulama ve gidiş hacmi üzerinde büyük bir kontrole sahip değildir, sadece size güvenlik duvarı / trafik filtre ayarları sizin ve trafik ne tür beklediğiniz olmadığı bloke ediliyor (ya için ne bekleyebilirsiniz ne hakkında çok şey öğrenmek İstediğiniz) bloke kalmamasıdır.