Ubuntu IP Masquerading

サーバーガイドのドキュメント

IPマスカレードの目的は、ネットワーク上のプライベートでルーティング不可能なIPアドレスを持つマシンが、マスカレードを行っているマシンを介してインターネットにアクセスできるようにすることです。 プライベートネットワークからインターネットに向かうトラフィックは、要求を行ったマシンに返信できるように操作する必要があります。 これを行うには、カーネルは、各パケットの送信 IPアドレスを変更して、要求を行ったプライベートIPアドレスではなくインターネット経由で返信するようにしなければなりません。 Linuxは接続トラッキング (conntrack)を使用して、どの接続がどのマシンに属しているかを追跡し、それに応じて各戻りパケットを再ルーティングします。 プライベートネットワークを離れたトラフィックは、Ubuntuゲートウェイマシンから発信されたものとして「偽装」されています。 このプロセスは、Microsoftのドキュメントでインターネット接続の共有と呼ばれています。

IPマスカレードの手順

これは1つのiptablesルールで行うことができます。これはネットワーク構成によって若干異なる場合があります:

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

上記のコマンドは、プライベートアドレス空間が192.168.0.0/16で、インターネット接続デバイスがppp0であることを前提としています。 構文は次のように分類されます。

フィルタテーブルの各チェーン(デフォルトテーブル、ほとんどまたはすべてのパケットフィルタリングが行われる)には、デフォルトポリシー ACCEPTがありますが、ゲートウェイデバイスに加えてファイアウォールを作成する場合は、ポリシーをDROPに設定するか、あなたのマスカレードされたトラフィックは、上記のルールが動作するようにFORWARDチェーンを通して許可される必要があります:

sudo iptables -A FORWARD -s 192.168.0.0/16 -o ppp0 -j sudo iptables -A FORWARD -d 192.168.0.0/16 -mステート設定、関連-i ppp0 -j ACCEPT

上記のコマンドは、ローカルネットワークからインターネットへのすべての接続と、それらの接続に関連するすべてのトラフィックを開始したマシンに戻すことができます。

* ライセンス

* Ubuntu Server Guide Index