Skip to main content

Ubuntu IP Masquerading

Using Linux as a NAT Masquerade Router (Hunyo 2025)

Using Linux as a NAT Masquerade Router (Hunyo 2025)
Anonim

Ang layunin ng IP Masquerading ay upang payagan ang mga machine na may mga pribado, di-routable IP address sa iyong network upang ma-access ang Internet sa pamamagitan ng machine na gumagawa ng masquerading. Ang trapiko mula sa iyong pribadong network na nakalaan para sa Internet ay dapat na manipulahin para sa mga tugon na ma-routable pabalik sa makina na ginawa ang kahilingan. Upang gawin ito, dapat baguhin ng kernel ang pinagmulan IP address ng bawat packet upang ang mga tugon ay iurong pabalik dito, sa halip na sa pribadong IP address na gumawa ng kahilingan, na imposible sa Internet. Ginagamit ng Linux Pagsubaybay ng Koneksyon (conntrack) upang subaybayan kung aling mga koneksyon ay pag-aari kung saan ang mga machine at i-reroute bawat return packet nang naaayon. Kaya't ang trapiko na nag-iiwan ng iyong pribadong network ay "masqueraded" na nagmula sa iyong makina ng Ubuntu gateway. Ang prosesong ito ay tinutukoy sa dokumentasyon ng Microsoft bilang Pagbabahagi ng Internet Connection.

Mga Tagubilin Para sa IP Masquerading

Ito ay maaaring maganap sa isang solong tuntunin ng iptables, na maaaring bahagyang naiiba batay sa iyong configuration ng network:

sudo iptables -t nat -A POSTROUTING -s 192.168.0.0/16 -o ppp0 -j MASQUERADE

Ipinapalagay ng utos sa itaas na ang espasyo ng iyong pribadong address ay 192.168.0.0/16 at ang iyong aparato na nakaharap sa Internet ay ppp0. Ang syntax ay pinaghiwa-hiwalay tulad ng sumusunod:

  • -t nat - ang panuntunan ay pumunta sa nat talahanayan
  • -A POSTROUTING - ang panuntunan ay idaragdag (-A) sa chain ng POSTROUTING
  • -s 192.168.0.0/16 - nalalapat ang panuntunan sa trapiko na nagmumula sa tinukoy na puwang ng address
  • -o ppp0 - nalalapat ang panuntunan sa naka-iskedyul na trapiko upang ma-routed sa pamamagitan ng tinukoy na aparato ng network
  • -j MASQUERADE - tumutugma sa trapiko na patakaran na ito ay ang "tumalon" (-j) sa target na MASQUERADE upang manipulahin tulad ng inilarawan sa itaas

Ang bawat chain sa filter table (ang default na talahanayan, at kung saan ang karamihan o lahat ng packet filtering ay nangyayari) ay may default patakaran ng ACCEPT, ngunit kung ikaw ay lumilikha ng isang firewall bilang karagdagan sa isang gateway device, maaari mong itakda ang mga patakaran sa DROP o REJECT, kung saan ang iyong masqueraded trapiko ay kailangang pahintulutan sa pamamagitan ng FORWARD chain para sa tuntunin sa itaas upang gumana:

sudo iptables -A FORWARD -s 192.168.0.0/16 -o ppp0 -j ACCEPT sudo iptables -A FORWARD -d 192.168.0.0/16 -m state --state ESTABLISHED, RELATED -i ppp0 -j ACCEPT

Ang mga utos sa itaas ay magpapahintulot sa lahat ng mga koneksyon mula sa iyong lokal na network sa Internet at lahat ng trapiko na may kaugnayan sa mga koneksyon upang makabalik sa makina na nagsimula sa kanila.

* Lisensya

* Ubuntu Server Guide Index