ネットワーク設定 · 1 min read · Jan 08, 2026

iptablesを使用したNATのステップバイステップ構成

iptablesを使用したNATのステップバイステップ構成

このチュートリアルでは、iptablesルールを使用してLinuxシステムでネットワークアドレス変換(NAT)を設定する方法を示します。これにより、システムはゲートウェイとして機能し、単一のパブリックIPアドレスを使用してローカルネットワーク上の複数のホストにインターネットアクセスを提供できます。これは、NATシステムを通過する際にIPパケットの送信元および/または宛先アドレスを書き換えることによって実現されます。

要件:

CPU - PII以上
OS - 任意のLinuxディストリビューション
ソフトウェア - Iptables
ネットワークインターフェースカード: 2

私の考慮事項:

xx.xx.xx.xxをあなたのWAN IPに置き換えてください

yy.yy.yy.yyをあなたのLAN IPに置き換えてください

(i.e. 192.168.0.0/16, 172.16.0.0/12, 10.0.0.0/8とMr. tzsが提案した通り)

WAN = eth0のパブリックIP xx.xx.xx.xx
LAN = eth1のプライベートIP yy.yy.yy.yy/ 255.255.0.0

ステップバイステップ手順

ステップ #1. Linuxボックスに2つのネットワークカードを追加します

ステップ #2. ネットワークカードを確認し、正しくインストールされているかどうかを確認します

ls /etc/sysconfig/network-scripts/ifcfg-eth* | wc -l

(出力は「2」であるべきです)

ステップ #3. パブリックIP(外部ネットワークまたはインターネット)用にeth0を構成します

cat /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=none
BROADCAST=xx.xx.xx.255    # オプションエントリ
HWADDR=00:50:BA:88:72:D4    # オプションエントリ
IPADDR=xx.xx.xx.xx
NETMASK=255.255.255.0    # ISPによって提供
NETWORK=xx.xx.xx.0       # オプション
ONBOOT=yes
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
GATEWAY=xx.xx.xx.1    # ISPによって提供

ステップ #4. プライベートIP(内部プライベートネットワーク)用にeth1を構成します

cat /etc/sysconfig/network-scripts/ifcfg-eth1

BOOTPROTO=none
PEERDNS=yes
HWADDR=00:50:8B:CF:9C:05    # オプション
TYPE=Ethernet
IPV6INIT=no
DEVICE=eth1
NETMASK=255.255.0.0        # 要件に基づいて指定
BROADCAST=””
IPADDR=192.168.2.1        # LANのゲートウェイ
NETWORK=192.168.0.0        # オプション
USERCTL=no
ONBOOT=yes

ステップ #5. ホスト構成    (オプション)

cat /etc/hosts

127.0.0.1       nat localhost.localdomain   localhost

ステップ #6. ゲートウェイ構成

cat /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=nat
GATEWAY=xx.xx.xx.1    # インターネットゲートウェイ、ISPによって提供

ステップ #7. DNS構成

cat /etc/resolv.conf

nameserver 203.145.184.13      # ISPによって提供されるプライマリDNSサーバー
nameserver 202.56.250.5        # ISPによって提供されるセカンダリDNSサーバー

ステップ #8. IPテーブルを使用したNAT構成

iptables --flush            # filterおよびnatテーブルのすべてのルールをフラッシュ
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
service iptables restart

ステップ #9. テスト

ping 192.168.2.1

クライアントシステムで試してください

ping google.com

ネットワーク上のPCの構成(クライアント)

•    プライベートオフィスネットワーク上のすべてのPCは、LinuxゲートウェイコンピュータのローカルプライベートネットワークIPアドレスを「ゲートウェイ」として設定する必要があります。
•    DNSはインターネット上のISPのものに設定する必要があります。
Windows ‘95, 2000, XP,  構成:

•    「スタート」 + 「設定」 + 「コントロールパネル」を選択します
•    「ネットワーク」アイコンを選択します
•    「構成」タブを選択し、イーサネットカードの「TCP/IP」コンポーネントをダブルクリックします。(TCP/IP -> ダイヤルアップアダプタではありません)
•    タブを選択します:
o    「ゲートウェイ」: Linuxボックスの内部ネットワークIPアドレスを使用します。(192.168.2.1)
o    「DNS構成」: ISPのドメインネームサーバーのIPアドレスを使用します。(実際のインターネットIPアドレス)
o    「IPアドレス」: PCのIPアドレス(192.168.XXX.XXX - 静的)とネットマスク(通常は小規模オフィスネットワーク用に255.255.0.0)もここで設定できます。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。