İsteği harici bir IP'ye localhost'a yönlendirme (sunucuyu taklit etme)


12

Bir sunucu (sabit kodlu IP) çağıran ve başlamadan önce bir cevap beklemek (giriş bir tür) bir uygulama (kaynak kodu yok) var.

Çünkü sunucu yarı yarıya azaldı, ben resmi sunucunun davranışını taklit edecek bir kukla sunucu oluşturmak istiyorum.

Benim sorunum:

Trafiği yerel makineme nasıl yönlendirebilirim?

IP wxyz göndermek tüm istek localhost (burada kukla sunucum çalışıyor) için yönlendirilecek istiyorum

Daha fazla bilgi:

  • kukla sunucum bir apache / php çözümüdür.
  • Bir hex editörü ile uygulamadaki sabit kodlu IP'yi düzenlemeye çalıştım, ancak uygulamayı başlattığımda bazı sağlama toplamı başarısız oldu.
  • IP uygulamada sabit kodlanmış olduğundan, hosts dosyasını kullanamıyorum.
  • Ben xp kazanıyorum.

related: Windows Server 2008'de trafiği bir IP'ye farklı bir IP'ye yeniden yönlendirme

Yanıtlar:


8

Bu tamamen bir saldırı olur, ancak söz konusu sunucunun IP'sini yerel arayüzünüzde ek bir IP olarak atamayı deneyebilirsiniz, talimatlar burada


Harika görünüyor. ama şimdi deneyemiyorum, (internetim kapalı, 3G'de tethering yapıyorum ..). Gelecek haftanın sonunda size geri bildirimde bulunacağım.
Loda

1
Bu gerçekten sallanıyor! harika çalışıyor, çok kolay bir çözüm. Teşekkürler !
Loda

Tatlı, duyduğuma sevindim :)
Robert Swisher

1
Hassasiyet: NIC'ime 2sd IP eklemenin bir yan etkisi oldu; aynı harici alt öğedeki tüm IP'ler NIC'ime yönlendirilir. yani: IP 50.51.51.51 eklenirken, IP 50.51.51.52'ye artık erişilemez. Bu, 50.51.51.0 yolundan ve 50.255.255.255 yolundan kaynaklanır. Çözüm: 50.51.51.52 yolunu ekleyin -> normal ağ geçidi.
Loda

bağlantı koptu
danilo

2

Aşağıdakileri deneyebilirsiniz:

Bu IP adresi için kukla sunucuyu ağ geçidi olarak kullanacak belirli bir rota ayarlayın, örneğin:

yol ekleme -host wxyz / 32 gw kukla-sunucu-ip

Bunun için ağınızın ana yönlendiricisine erişmeniz veya istekleri gönderen makinede yapmanız gerekir. Bu, wxyz IP adresli TCP paketlerini kukla sunucunun MAC adresine etkili bir şekilde gönderir. Şimdi kukla sunucunun onlarla ne yapacağını bildiğinden emin olmanız gerekir.

Sonra kukla sunucuya ikincil adres olarak wxyz IP adresini ekleyin.
Son olarak, wxyz adresini de dinlediğinden emin olmak için kukla sunucudaki apache yapılandırmasını güncelleyin ve kukla sunucudaki vhost'un hem IP adresi hem de alan adı için gelen istekleri kabul ettiğinden emin olun.

Bunun yalnızca istekte bulunan makine ile kukla sunucu arasında başka yönlendirici yoksa çalışacağını lütfen unutmayın. İlgili herhangi bir güvenlik duvarı varsa, bunların da güncellenmesi gerekir.


Cevabınız için teşekkürler, tam olarak ne yapmak istediğime benziyor. ama onu uygularken sorunum var. Yönlendiriciye dokunmamayı tercih edeceğim, çünkü çözüm makinem için özel olmalı. Beni örnek olarak koyduğunuz komut benim win xp üzerinde çalışmıyor. Ayrıca "rota ekle wxyz 127.0.0.1" başarılı olmadan çalıştı. Uygulama ve kukla sunucu arasında güvenlik duvarı / yönlendirici yok. ikisi de aynı makinede çalışıyor. (Ancak, bir yazılım güvenlik duvarım var: kaspersky) Bu rotayı nasıl ayarlayacağım konusunda gerçekten yardımcı olacağım.
Loda

1
Windows için bir rota komutu var: rota ADD wxyz MASK 255.255.255.255 127.0.0.1 Bu, rotayı kendi makinenize yönlendirecektir. Wxyz adresine gelen istekler için güvenlik duvarını açmanız gerekebilir.
wolfgangsz

Başarısız bir şekilde bu komutu kullanarak bir rota eklemeye çalıştım. neden bilmiyorum.
Loda

"route add 62.1.1.10 mask 255.255.255.255 127.0.0.1" Hata mesajı şöyle diyor: "rota eklenirken hata oluştu: yanlış parametre" (ES'den çevrildi)
Loda

Hmm, belki 127.0.0.1'i bu arabirimin gerçek LAN IP adresi ile değiştirmeniz gerekir. Daha önce hiç böyle bir şey denemedim, bu yüzden küçük bir tahmin var.
wolfgangsz

1

Muhtemelen iptables ile birlikte bir şeyler patlama olabilir. İşte bir zamanlar kullandığım ama artık size toehold vermek için yapmadığım bir şey:

*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A PREROUTING -d 172.16.25.202 -i eth0 -p tcp -m tcp --dport 25 -j DNAT --to 172.16.27.59:8025
-A POSTROUTING -o eth0 -j MASQUERADE 
COMMIT

Not: Bunu uzun zaman önce yaptım, orada hatalar olabilir

Bir sorun olabileceğini gördüğüm tek şey, arayüze özgü olmasıdır. Ben eth0 sadece gelen kısmı için olduğunu düşünüyorum, bu yüzden hedef hala işe yarayabilir gibi lo arayüzü (127.0.0.1) bir ip kullanarak ...


1
Bu harika bir cevap olurdu ... ama Windows XP kullanıyor.
Jason Berg

Doh! Sanırım "apache / php" yi gördüm ve okumayı bıraktım. İşaret ettikten sonra bile, görmeden önce üç kez taradım. Ah, bırakacağım, belki bir yerlerde birisine yardım eder.
jj33

Seçici bir VPN oluşturmak için Vagrant, busybox ve iptables ile düşünüyorum. Sistemime yalnızca bilinen birkaç IP adresinin VPN'ye ait olduğunu söylemek istiyorum, bu nedenle başka bir yere giden trafik VPN'den geçmeyecek. Benim fikrim VPN'ye bağlanmak için çok hafif bir Linux'u meşgul kutusu olarak kullanmak ve daha sonra iptables veya hosts dosyasını veya benzer bir şeyi kullanmak, bilinen IP adreslerinin isteklerini konuk Vagrant VM'ye yönlendirerek VPN'yi işleyecek şekilde yönlendirmek. . Bu iptables kuralları bana biraz yardımcı olabilir :)
Bruno Finger
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.