logo
 
 

Witamy w Art-Info

Nasza firma powstała w 1993 roku, to już całkiem sporo lat współpracy z Państwem na naszym rynku. Zajmujemy się kompleksową obsługą z zakresu szeroko pojętej informatyki małych, średnich jak i dużych przedsiębiorstw. Nasze usługi świadczone są na najwyższym możliwym poziomie. Dysponujemy wykwalifikowaną kadrą, zapewniającą naszym klientom poczucie bezpieczeństwa, fachowe wsparcie oraz konsulting. Możemy być dumni, że pozyskaliśmy Państwa zaufanie i kontynuujemy dalszą współpracę na bazie solidności i rzetelności wykonywanych usług.

 

iptables Nat 1:1

 

NETMAP

Ten cel może zostać użyty tylko w tablicy nat. Cel ten kończy przetwarzanie pakietu. Pozwala na dokonanie translacji adresów 1:1 (tzw. NAT 1:1).

Oznacza to, że adresy pochodzące z danej sieci są natowane na adresy z innej sieci o tym samym rozmiarze. Cel ten przyjmuje jedną opcję:

--to adres/maska - ustawia adres sieci używany do NAT (w formacie CIDR). W natowanym adresie ilość bitów maska jest zastępowana bitami z adres.
Uwagi
  • Cel NETMAP w zależności od tego, czy znajduje się w łańcuchu PREROUTING, czy POSTROUTING (lub OUTPUT) dokonuje DNAT, lub SNAT.
  • W regułach wykorzystujących NETMAP warto zawsze użyć dopasowania z siecią mniejszą, lub równą sieci, na którą się natuje. Dla poniższej reguły:
iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -j NETMAP --to 172.16.16.0/24

Adresy ip 192.168.10.100 i 192.168.20.100 zostaną natowane na ten sam adres 172.16.16.100!

Przykłady
iptables -t nat -A PREROUTING -d 192.168.0.0/24 -j NETMAP --to 172.16.16.0/24
  • Dokonuje DNAT pakietów przychodzących w taki sposób, że dowolny adres docelowy z sieci 192.168.0.0/24 zostanie zastąpiony
  • przez odpowiadający adres z sieci 172.16.16.0/24.
  • Na przykład adres docelowy 192.168.0.125 zostanie zamieniony na adres 172.16.16.125.
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j NETMAP --to 172.16.16.0/24
  • Powyższa linijka dokonuje SNAT pakietów przychodzących z sieci 192.168.0.0/24 na odpowiadające adresy z sieci 172.16.16.0/24
  • Poniższy przykład pokazuje w jaki sposób mając pulę adresów publicznych (np. 140.0.120.64/27) można natować je
  • na adresy z sieci prywatnej (np. fragment sieci 192.168.150.0/24).
iptables -t nat -A PREROUTING -i eth1 -d 140.0.120.64/27 -j NETMAP --to 192.168.150.0/27   # 1
iptables -t nat -A POSTROUTING -o eth1 -s 192.168.150.0/27 -j NETMAP --to 140.0.120.64/27   # 2

Linijka (1) dokonuje natowania adresów publicznych na adresy prywatne, dzięki czemu serwery będąc w sieci prywatnej będą widoczne w internecie pod odpowiadającymi adresami publicznymi. Linijka (2) pozwala serwerom wychodzić na świat za pomocą przyporządkowanych adresów publicznych. Warto zwrócić uwagę, że ponieważ operacje natowania są realizowane na reprezentacji binarnej adresów IP ich reprezentacje dziesiętne nie muszą zaczynać się w tym samym miejscu - w powyższym przykładzie zachodzi np. translacja 192.168.150.10 <=> 140.0.120.74.

 

Na podstawie http://pl.wikibooks.org/wiki/Sieci_w_Linuksie/Netfilter/iptables/akcje