W iptableswiele razy widzę docelową Masquerade . Co to jest? Szukałem i znalazłem wiele rzeczy. Ale potrzebuję kogoś, kto wyjaśni mi, czym jest MASQUERADE w łatwy do zrozumienia sposób?
Jest to algorytm zależny od implementacji iptables, który umożliwia kierowanie ruchem bez zakłócania ruchu pierwotnego.
Używam algorytmu maskarady, gdy chcę utworzyć wirtualny adapter Wi-Fi i udostępnić moje Wi-Fi.
NIE mówię o udostępnianiu połączenia Ethernet przez Wi-Fi, mówię o udostępnianiu połączenia Wi-Fi przez Wi-Fi poprzez maskowanie go do wirtualnego adaptera. To w efekcie pozwala udostępniać połączenie Wi-Fi za pośrednictwem Wi-Fi.
Naprawdę nie podoba mi się, jak wyszukiwarki robią algorytm jakimś złym typem hakowania. Używam go tylko po to, aby udostępnić mój internet moim telefonom z Androidem.
jak twój pierwszy link, który był - właśnie - tego szukam :)
Mohammad Reza Rezwani
Przetestowałem MASUERADEregułę (trzeci wiersz na liście kodów), a link jest dokładnie udostępniony i dostępny na różnych interfejsach. Dlatego jestem sfrustrowany, co jest FORWARDregułą? (reguła w drugim wierszu listy kodów)
千 千 郷
34
MASQUERADE jest celem iptables, którego można używać zamiast celu SNAT (źródłowy NAT), gdy zewnętrzny ip interfejsu inet nie jest znany w momencie pisania reguły (gdy serwer dynamicznie otrzymuje zewnętrzny ip).
@Luc, docelowy SNAT (translacja źródłowego adresu sieciowego) z określeniem źródłowego adresu IP, który powinien zostać umieszczony zamiast oryginalnego źródłowego adresu IP w pakiecie ip z oryginalnego hosta. Podobnie jak w -j SNAT --to-source xx.xx.xx.xxprzypadku, gdy xx.xx.xx.xx jest zewnętrznym adresem ip pożądanego interfejsu. I nie mogę powiedzieć, że należy go używać, gdy znany jest zewnętrzny ip. Wolę używać MASQUERADE zamiast SNAT, aby uelastycznić reguły i nie wiązać się z konkretnym zewnętrznym IP, który mam w tej chwili.
Sergey P. aka lazur
7
IP Masquerade jest również znany jako Network Address Translation (NAT) i Network Connection Sharing inne popularne systemy operacyjne. Jest to w zasadzie metoda pozwalająca komputerowi, który nie ma publicznego adresu IP w całym Internecie, komunikować się z innymi komputerami w Internecie za pomocą innego komputera znajdującego się między nim a Internetem.
Jak wiesz, adresy IP są używane w Internecie do identyfikacji komputerów. Biorąc pod uwagę pakiet z adresem IP, każdy router tworzący Internet wie, gdzie wysłać ten pakiet, aby dostać go do miejsca docelowego. Obecnie istnieje również kilka zakresów adresów IP zarezerwowanych do prywatnego użytku w sieciach lokalnych i innych sieciach, które nie są bezpośrednio połączone z Internetem. Gwarantujemy, że te prywatne adresy nie będą używane w publicznym Internecie.
Powoduje to problemy w przypadku urządzeń podłączonych do sieci prywatnych, które używają prywatnych adresów IP, ponieważ nie można ich podłączyć bezpośrednio do Internetu. Nie mają adresu IP, który może być używany w publicznym Internecie. IP Masquerade rozwiązuje ten problem, umożliwiając maszynie z prywatnym adresem IP komunikowanie się z Internetem, jednocześnie modyfikując pakiety urządzenia, aby używały prawidłowego publicznego adresu IP zamiast oryginalnego prywatnego adresu IP. Pakiety zwracane z Internetu są ponownie modyfikowane w celu użycia oryginalnego adresu IP przed dotarciem do prywatnej maszyny IP.
Zauważ, że nie jest to ograniczone do maskowania sieci / NAT, którego można użyć do kierowania ruchu z jednej sieci do drugiej, powiedzmy 10.0.0.0/24 i 192.168.0.0/24
Regułę maskarady Iptables można zastąpić regułą SNAT
iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth2 -j SNAT --to-source 192.168.1.2
# supposing eth2 assigned ip is 192.168.1.2
Zarówno maskarada, jak i snat wymagają włączenia ip_forward na poziomie jądra za pomocą echa "1" > /proc/sys/net/ipv4/ip_forwardlub na stałe poprzez edycję pliku ustawień nano /etc/sysctl.conf.
Przekazywanie IP sprawia, że maszyna działa jak router, a tym samym logicznie przekierowuje / przekazuje pakiety ze wszystkich aktywnych interfejsów przez sieć docelową (lokalną / netto / inną / itp.) Lub postępując zgodnie z tabelą tras. Zauważ, że włączenie ip_forward może powodować poważne zagrożenie bezpieczeństwa, jeśli nie można uniknąć ip_forward, należy go nadzorować / zabezpieczyć dodatkowymi regułami iptables / route.
MASUERADE
regułę (trzeci wiersz na liście kodów), a link jest dokładnie udostępniony i dostępny na różnych interfejsach. Dlatego jestem sfrustrowany, co jestFORWARD
regułą? (reguła w drugim wierszu listy kodów)MASQUERADE jest celem iptables, którego można używać zamiast celu SNAT (źródłowy NAT), gdy zewnętrzny ip interfejsu inet nie jest znany w momencie pisania reguły (gdy serwer dynamicznie otrzymuje zewnętrzny ip).
źródło
-j SNAT --to-source xx.xx.xx.xx
przypadku, gdy xx.xx.xx.xx jest zewnętrznym adresem ip pożądanego interfejsu. I nie mogę powiedzieć, że należy go używać, gdy znany jest zewnętrzny ip. Wolę używać MASQUERADE zamiast SNAT, aby uelastycznić reguły i nie wiązać się z konkretnym zewnętrznym IP, który mam w tej chwili.IP Masquerade jest również znany jako Network Address Translation (NAT) i Network Connection Sharing inne popularne systemy operacyjne. Jest to w zasadzie metoda pozwalająca komputerowi, który nie ma publicznego adresu IP w całym Internecie, komunikować się z innymi komputerami w Internecie za pomocą innego komputera znajdującego się między nim a Internetem.
Jak wiesz, adresy IP są używane w Internecie do identyfikacji komputerów. Biorąc pod uwagę pakiet z adresem IP, każdy router tworzący Internet wie, gdzie wysłać ten pakiet, aby dostać go do miejsca docelowego. Obecnie istnieje również kilka zakresów adresów IP zarezerwowanych do prywatnego użytku w sieciach lokalnych i innych sieciach, które nie są bezpośrednio połączone z Internetem. Gwarantujemy, że te prywatne adresy nie będą używane w publicznym Internecie.
Powoduje to problemy w przypadku urządzeń podłączonych do sieci prywatnych, które używają prywatnych adresów IP, ponieważ nie można ich podłączyć bezpośrednio do Internetu. Nie mają adresu IP, który może być używany w publicznym Internecie. IP Masquerade rozwiązuje ten problem, umożliwiając maszynie z prywatnym adresem IP komunikowanie się z Internetem, jednocześnie modyfikując pakiety urządzenia, aby używały prawidłowego publicznego adresu IP zamiast oryginalnego prywatnego adresu IP. Pakiety zwracane z Internetu są ponownie modyfikowane w celu użycia oryginalnego adresu IP przed dotarciem do prywatnej maszyny IP.
Zauważ, że nie jest to ograniczone do maskowania sieci / NAT, którego można użyć do kierowania ruchu z jednej sieci do drugiej, powiedzmy 10.0.0.0/24 i 192.168.0.0/24
Regułę maskarady Iptables można zastąpić regułą SNAT
=
Zarówno maskarada, jak i snat wymagają włączenia ip_forward na poziomie jądra za pomocą echa
"1" > /proc/sys/net/ipv4/ip_forward
lub na stałe poprzez edycję pliku ustawień nano/etc/sysctl.conf
.Przekazywanie IP sprawia, że maszyna działa jak router, a tym samym logicznie przekierowuje / przekazuje pakiety ze wszystkich aktywnych interfejsów przez sieć docelową (lokalną / netto / inną / itp.) Lub postępując zgodnie z tabelą tras. Zauważ, że włączenie ip_forward może powodować poważne zagrożenie bezpieczeństwa, jeśli nie można uniknąć ip_forward, należy go nadzorować / zabezpieczyć dodatkowymi regułami iptables / route.
źródło