Çoklu IP ana bilgisayarındaki giden bağlantılar için IP adresi belirtme


15

sunucularımdan birinde (Debian 5.0.6) aynı arabirimde iki genel ip adresi var. Bu aylarca iyi çalışır ama aniden giden bağlantılar için "yanlış" ip adreslerini kullanıyor. Geriye doğru arama eşleşmeyeceğinden ve e-postalar spam puanı aldığından bu bir sorundur.

eth0      Link encap:Ethernet  Hardware Adresse 00:1b:21:14:8e:9c  
          inet Adresse:81.169.180.51  Bcast:81.169.180.51  Maske:255.255.255.255
          inet6-Adresse: fe80::21b:21ff:fe14:8e9c/64 Gültigkeitsbereich:Verbindung

eth0:0    Link encap:Ethernet  Hardware Adresse 00:1b:21:14:8e:9c  
          inet Adresse:85.214.157.120  Bcast:85.214.157.120  Maske:255.255.255.255


Kernel-IP-Routentabelle
Destination     Router          Genmask         Flags Metric Ref    Use Iface
81.169.180.1    0.0.0.0         255.255.255.255 UH    0      0        0 eth0
0.0.0.0         81.169.180.1    0.0.0.0         UG    0      0        0 eth0

Şu anda giden bağlantılar için 85.214.157.120 kullanıyor. 81.169.180.51'i nasıl kullanabilirim?

Düzenleme : 255.255.255.255 ağ maskesi, hem hosting hem de ev sahibi şirketin DHCP yanıtı ile tutarlıdır. Birden çok kez /etc/init.d/networking yeniden başlatıldığında, giden bağlantılar için doğru ip adresi elde edilir. Ancak bu kararlı bir çözüm değildir. /Düzenle

Düzenleme 2 : Ana bilgisayar yolunun sorunumla ilgili olmadığından emin olmak için yerel bir test ağı kurdum:

eth0      inet Adresse:192.168.0.2  Bcast:192.168.0.255  Maske:255.255.255.0
eth0:0    inet Adresse:192.168.0.3  Bcast:192.168.0.255  Maske:255.255.255.0

192.168.0.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0
0.0.0.0        192.168.0.1     0.0.0.0         UG    0      0        0 eth0

Herkes kaynak ip adresi 192.168.0.2 giden tcp bağlantılarında kullanılan emin olmak için nasıl bir fikir varsa, minnettar olacaktır. / Düzenle 2

Yanıtlar:


24

Varsayılanı güncelle:

ip route change default via 81.169.180.1 src 81.169.180.51

Yapılandırmayı kontrol edin:

ip route list

1
Yeniden başlattıktan sonra bunu nasıl kalıcı hale getirebilirim?
dezhi

3

Bindbn'in cevabı iyi, ama bazı komplikasyonlar buldum.

1) bindbn'nin dediği gibi "ip yol listesini" kontrol etmelisiniz. Listedeki diğer bazı kurallar varsayılan yoldan öncelikli olabilir. Bu kuralı silmeniz veya biraz farklı bir kural oluşturmanız gerekebilir.

2) ip komutu ile yapılan tüm değişiklikler sadece bir sonraki yeniden başlatmaya kadar çalışır. Bu cevap Kalıcı olarak kaynak ilkesi yönlendirme kurallarının eklenmesi , nasıl kalıcı hale getirileceğini açıklar.

Özetle, "etc" veya "post-up" satırı olarak çalıştırmanız gereken ip route komutunu / etc / network / interfaces'e ekleyebilirsiniz. Rotayı kaldırmak için karşılık gelen bir "aşağı" çizgi ekleyebilirsiniz.


1

Değiştirmeyi deneyin

 allow-hotplug eth0

için

 auto eth0

Bu, fiziksel arayüzünüzü önce gelmeye zorlamalıdır. Eth0: 0 için allow-hotplug girişini değiştirmeniz gerekebilir veya gerekmeyebilir.


1

Merak ettikten sonra, IP adreslerinizin neden 255.255.255.255 ağ maskesi var? Bu gerçekten mümkün değil, çünkü tüm adresin ağ olduğu anlamına gelir. Ana bilgisayarlar için yer yok. Yayın adresinizin ana bilgisayar IP'nizle aynı olması endişe vericidir, ancak büyük olasılıkla ağ maskesi sorunu nedeniyle. Daha ziyade ağ maskeniz 255.255.255.0 olmalıdır.

Bu size aynı alt ağda iki ana bilgisayar vermek için yapıldı mı? Her arabirimin farklı bir alt ağda olması için bir değişiklik yapmak tercih edilebilir. 255.255.255.128 eth0 ve ağ geçidinizi (81.169.180.1) aynı alt ağa, eth0: 0 ayrı bir alt ağa koyar. Ancak bu, eth0'ın yalnızca 81.169.180.1-81.169.180.127 ile iletişim kurabileceği anlamına gelir. Ve eth0: 0 129-254'ten. Ancak, şu anki kurulumunuzun neden işe yaradığını gerçekten göremiyorum.

Şimdi, bu yukarıda gördüğünüz sorunlara neden olur mu? Doğrudan bir bağlantı göremiyorum ama mümkün.
Kesinlikle ayarlayacağım bir şey. Bu işe yaramazsa, neden bu şekilde ayarladığınızı açıklayabilirsiniz.


Düzenleme: Bu ana bilgisayar üzerinde iyi çalışıyor muydu, yoksa farklı bir makine / işletim sistemi miydi? Neyin değişmiş olabileceğine dair bir fikrin var mı? Sormamın nedeni, Linux'un aynı alt ağda iki arabirim olmasını gerçekten sevmemesidir. Bunu kendi ağımda çalıştırmaya çalışmak beni deli ediyor. Ağ hizmetlerini yeniden başlatana / yeniden başlatana kadar doğru IP üzerinde çalışmanız oldukça olası görünüyor. Sonra yanlış arayüzü kullanarak geldi. Referans: http://anders.com/cms/258

Ayrıca ifdowneth0: 0'ı deneyebilir , sonra rotayı ekleyebilir ve sonra ifupgeri girebilirsiniz . Bu, doğru IP'nin kullanılmasını garanti edebilir.

Manuel olarak ekleme yardımcı dev eth0 olabilir , ancak rota düzgün yapılmış gibi görünüyor.


Daha Fazla Düzenleme: Debian'daki en yeni IP yönetim araçlarını kullanmayı deneyebilirsiniz iproute 2. ( İkincil bağlantı )
Arayüzü Bringin hattı boyunca bir şeye benziyor : ip link set eth0 up

ip addr add 192.168.0.2/24 dev ethe0
ip addr add 192.168.0.3/24 dev eth0

Ardından
ip route add 10.0.0.0/16 via 192.168.0.2


--Christopher Karel ile yönlendirme masasını kurun


255.255.255.255 ağ maskesi, hem barındırma şirketinin belgeleriyle hem de DHCP yanıtıyla tutarlıdır. Google'a göre noktadan noktaya ağlarda 255.255.255.255 olması normaldir. Anlayabildiğim kadarıyla, aynı katman 2 yayın etki alanında güvenilmeyen ana sahiplerinin güvenlik riski göz önüne alındığında hiçbiri noktadan noktaya ağ kullanmak için hosting şirketi oldukça aptalca olacaktır.
Hendrik Brummermann

Wolfgangsz'in yukarıda söylediği gibi, a / 32 bir noktadan noktaya bağlantı için bir standart değildir. A / 31'in yapılabileceğini biliyorum, ancak yayın ve ağ tanımlayıcılarını öldürüyor. Bahsettiğiniz 'ana bilgisayar yolu', yönlendirme tablolarında kullanılması anlamına gelir. Örneğin: Bir ağa değil, belirli bir ana bilgisayara giden yol. Bu nedenle bir yönlendirme protokolü olan OSPF'ye bağladığınız RFC'de ortaya çıkması. Bununla birlikte, ISS'nizin bunu işletim sisteminizle yapmanızı istediğinden eminseniz, devam ettirebilirsiniz.
Christopher Karel

Tamam, orijinal düzenlemenize yardımcı olabilecek birkaç düzenleme yapıldı.
Christopher Karel

-1

Mevcut kurulumunuz aslında hiç çalışmamalıdır. Her iki arabirimin ağ maskesi 255.255.255.255 olduğundan, ağ geçidine yer yoktur. Ancak, anlamlı trafik sağlamak için sunucunuzun bir ağ geçidine ihtiyacı vardır. İki ortak IP adresi sağlayan İSS ayrıca her iki IP adresi için de ağ maskesi ve ağ geçidi ayarları sağlamalıdır.

Örnek (bu benim özel sunucum ve IP adresleri gerçek):

Çekirdek IP yönlendirme tablosu
Hedef Ağ Geçidi Genmask Bayrakları Metrik Ref Kullanım Iface
217.10.144.208 0.0.0.0 255.255.255.248 U 0 0 0 eth0
0.0.0.0 217.10.144.209 0.0.0.0 UG 0 0 0 eth0

Sunucunun kendisi, ağ geçidiyle aynı alt ağda bulunan 217.10.144.210 üzerindedir (zorunludur, aksi takdirde trafik yönlendirilemez). Muhtemelen ISS, diğer bazı müşteriler için de aynı alt ağı sağlıyor.

Bu sunucudaysanız ve ağ geçidinize bir ping işlemi gerçekleştiriyorsanız, "barındırılacak yol yok" iletisi almalısınız.

ISS ile konuşun ve doğru ayarları alın, ardından arayüz yapılandırmanızı güncelleyin, ağları yeniden başlatın ve tekrar kontrol edin.


2
255.255.255.255 ağ maskesi, hem barındırma şirketinin belgeleriyle hem de DHCP yanıtıyla tutarlıdır. Google'a göre noktadan noktaya ağlarda 255.255.255.255 olması normaldir. Anlayabildiğim kadarıyla, aynı katman 2 yayın etki alanında güvenilmeyen ana sahiplerinin güvenlik riski göz önüne alındığında hiçbiri noktadan noktaya ağ kullanmak için hosting şirketi oldukça aptalca olacaktır.
Hendrik Brummermann

Noktadan noktaya bir ağınız varsa, ağ maskeniz 255.255.255.252 olacaktır. Bu, iki uç noktayı oluşturan iki ana bilgisayara, bir ağ adresine ve bir yayın adresine izin verir. Bu tür bağlantılar için normal senaryo budur. Sizin durumunuzda, diğer ev sahibi dünyanın geri kalanına açılan kapı olacaktır. Google'da ne yaptığınızı umursamıyorum, ancak TCP / IP ağları bu şekilde çalışıyor. Ve açıkça sizin için çalışmıyor. Sonuçları size bırakıyorum.
wolfgangsz

Teşekkür ederim, ama bu kısım benim için gayet iyi çalışıyor. Bu arada, resmi İnternet standardında "ana bilgisayar yolu" olarak adlandırılır: rfc-editor.org/rfc/rfc2328.txt
Hendrik Brummermann

Sorunum yerel bir ağda da yeniden oluşturulabilir: ifconfig eth0 192.168.0.2 mask 255.255.255.0 / ifconfig eth0: 1 192.168.0.3 mask 255.255.255.0 / route varsayılanı ekle gw 192.168.0.1
Hendrik Brummermann
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.