İki arayüz arasında iletilen iptables


26

Bu yüzden iki kablosuz arayüzlü bir linux kutum var, biri istasyon, diğeri AP.

wlan0 (station) - İnternet bağlantısına bağlı

wlan1 (AP) - Diğer istemciler ona bağlanır.

Wlan1'e bağlı olan istemcilerin wlan0 üzerinden internete erişmesini istiyorum. Ve çekirdeğim köprüleme desteği olmadığı için bunu iptables ile yapmak istiyorum.

İşte şimdiye kadar iptables ile denedim ama işe yaramadı:

iptables -A FORWARD -i wlan0 -o wlan1 -j ACCEPT
iptables -A FORWARD -i wlan1 -o wlan0 -j ACCEPT

Herhangi bir yardım için minnettar olurum.


1
IPTABLES durum bilgisi olan bir paket filtredir, paketlere izin verir / düşer / paketler. Bir yönlendirici veya köprü değil. Komutlarınız güvenlik duvarını trafiğe izin verecek şekilde ayarlar, ancak iletmek için hiçbir şey yapmazlar.
Zoredache

Bu yüzden çekirdeği ihtiyacınız olan özelliklere sahip bir tane ile değiştirin. Sonuçta "bir linux kutusu".
Michael Hampton

'Rota' ile yapmaya çalıştığım şeyi başarabilir miyim? Çekirdeği köprü desteği ile yeniden inşa etmeye çalışacağım ama başka seçenekler olup olmadığını merak ediyorum.
broody

Rota etkinleştirildikten sonra nereye gideceğini söyler. Michael size yönlendirmeyi desteklemek için ne yapmanız gerektiğini söyledi. O zaman sysctl ile açmanız gerekir.
Magellan

Yanıtlar:


35

İlk olarak, özel arayüzünüzü bağlayan ana makinelerin internete girmesini sağlamak için arayüzleri köprülemenize gerek yoktur, bir arayüzde gelen paketleri diğeri ile dolaştırmanız gerekir.

Bunu yapmak için, sadece yapmanız gereken:

  1. Linux kutunuzda yönlendirmeyi etkinleştirin:
  2. Belirli (veya tümünün) paketlerinin yönlendiricinizi geçmesine izin ver
  3. Birinin belirttiği gibi, netfilter durumsuz bir güvenlik duvarı olduğu için önceden kurulmuş bağlantılar için trafiğe izin verin
  4. İnternete giden paketlerin kaynak adresini değiştirin
    yankı 1> / proc / sys / net / ipv4 / ip_forward
    iptables-Bir İLERİ -i wlan1 -o wlan0 -j KABUL
    iptables-Bir İLERİ -i wlan0 -o wlan1 -m durumu - devlet KURULU, İLGİLİ \
             -j KABUL ET
    iptables -t nat-BİR POSTROUTING -o wlan0 -j MASQUERADE

Bunu yapmalı.


Muhtemelen demek istediğini düşünüyorum: echo 1 >/proc/sys/net/ipv4/ip_forwardilk satır için
Jason Tan

işte bu ... bu çizginin son kısmına ne oldu bilmiyorum ... düzeltildi.
Torian

Müşterileri linux kutusunu ağ geçidi olarak kullanacak şekilde ayarlamanız gerekeceğini düşünüyorum.
Jason Tan

Ve iletimin yeniden başlatılmasıyla devam etmesi için şunu yapmak istersiniz: 'echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf'
Jason Tan

1
@StudentsTea Evet, iptables' FORWARDtablonuz küresel kabul gören bir politikaya ayarlanmadıkça yapın. Yine de natmasa kurallarına yine de ihtiyacınız olacak .
Thomas Ward,
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.