Ağ geçidi olarak Iptables uzak PC (tüm trafik yönlendirme)


0

İşte bir problem: sshYerel intranetteki iki makineye tam erişimim var .
Makinede iki hızlı ve güvenilir internet erişimi.
İnternet bağlantısını hızlandırmak için tüm giden trafiği makine PC1'den PC2'ye iletmek istiyorum.

Bu başarılabilir iptablesmi? görüntü tanımını buraya girin

İşte durumla ilgili bazı gerçekler

  • PC1'in ağındaki diğer makinelere veya intranet'teki olaylara erişmesine gerek yoktur
  • PC1 ve PC2 birbirleriyle sınırsızca kolayca iletişim kurabilir (ping, ssh, tcp, udp)
  • PC1 ağ geçidi olarak gw2 kullanamıyorum çünkü diğer ağda ve erişilemiyor
  • Gerek PC1 gerekse PC2 ayarını yapabilirim

İki ağ arasındaki ağ geçidini pc1 için varsayılan rota olarak kullanamaz mısınız? Bu daha sonra gw2'ye ve hızlı bağlantıya yönlendirilir mi? Bu varsayılan #ip rota ekleme satırları için varsayılan ağ geçidi için <gw3 ip> üzerinden varsayılan
Guy

@Guy aslında gw1 zaten internete ve PC2'ye erişmek için kullanılıyordu. PC2'nin başka bir cihaz etiği üzerinde kendi ağ geçidi vardır.
Ivan Talalaev

Bu, pc1'den pc2'ye olan hızlı bağlantınızın gerçekte internete yavaş bağlantı üzerinden yapıldığını gösteriyor. Pc1 ve pc2 için 'ip addr' ve 'ip route show' görmek yararlı olabilir
Guy

1
İstediğiniz şey yönlendirme değil, proxy trafiği. Bunu yapmanın birkaç yolu var. Sen bir VPN kurmak edebilir veya ssh tünel kurabilirsiniz vb Bu bağlantı SSH tüneli nasıl kurulacağı gösterir digitalocean.com/community/tutorials/...
ibrahim

Yanıtlar:


1

PC1'de PC2 üzerinden varsayılan bir rota yapın:

ip route add default via <PC2-IP>

PC2'de,

IPv4 paketlerinin iletilmesine izin ver:

sysctl net.ipv4.ip_forward = 1

Ardından, iletme ve maskeleme için IPv4 IPtables kurallarını ayarlayın:

iptables -A FORWARD -4 -j ACCEPTBu, yalnızca FORWARD zincirinin varsayılan politikası zaten bırakılmışsa gereklidir. Büyük olasılıkla daha önce bir IPtables konfigürasyonu yapmamışsanız yapmazsınız.

iptables -t nat -A POSTROUTING -4 -s <PC1-IP> -j MASQUERADE

PC2'de çakışan IPv4 IPtables kurallarınız yoksa, bu yeterli olacaktır.

Geçerli IPv4 IPtables kurallarını aşağıdakilerle kontrol edebilirsiniz:

iptables -vnL

iptables -t nat -vnL


çocuklar, dalga mı geçiyorsunuz? Her iki bilgisayar da tamamen farklı alt ağlarda. Aralarında birkaç yönlendirici ve güvenlik duvarı. Bu sadece varsayılan düğüm olarak eklemek mümkün değildir . RTNETLINK answers: Network is unreachable
Ivan Talalaev

@IvanTalalaev ip yolu, <alt ağ1 ile alt ağ 2 arasındaki ağ geçidi> yoluyla <subnet2> ekleyin.
Guy

0

Bu yönlendirme ile ilgili. PC2'yi PC1 için varsayılan ağ geçidi yapın. Ek olarak (muhtemelen) PC2'yi iptablesyapılandırmak için kullanmak zorundasınız SNATki gw2 cevap paketlerini PC2'ye göndersin.

Hızlı internet bağlantısına ek olarak yavaş internet bağlantısını kullanmak istiyorsanız daha karmaşık hale gelir.


Peki bunu nasıl yapabilirim? Görüldüğü gibi, tamamen farklı ağlarda bulunan PC1 ve PC2, her bir ağ geçidini bağlar. Bildiğim gibi iptables, aynı alt ağdaki aygıttan doğrudan erişime sahip bir ağ geçidi olması gerekiyor. bağlantı
Ivan Talalaev
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.