ネットワーク設定 · 1 min read · Feb 12, 2026

CentOS 5 - DHCPサーバーを使用したホームゲートウェイファイアウォールによる接続共有

CentOS 5 - DHCPサーバーを使用したホームゲートウェイファイアウォールによる接続共有

Version 1.0
Author: Cameron Camp
Last edited: Jan. 16th, 2008

ホームネットワークを設定しようとしている場合、DSL/Cableモデムに接続された外部向けのコンピュータを設定し、そのファイアウォールボックスの背後にすべてのコンピュータを配置して安全に保ちたいと思うでしょう。このチュートリアルでは、ゲートウェイコンピュータ上の単一の外部接続(Iptablesファイアウォールを使用)と、同じボックス上の2つ目の内部接続を使用して、家庭やオフィスの内部にあるコンピュータを接続し、接続時に自動的にIPを割り当てる方法を示します(DHCPサーバーを使用)。Iptablesは非常に複雑になる可能性がありますが、基本的なファイアウォールを構成するだけにします。後で壊すことなく、さらにセキュリティを追加できます。Linuxにはこれを行う方法がたくさんありますが、これはおそらく十分にシンプルで、基本を学ぶことができます。私はCentOS 5ボックスでこれを行いましたが、わずかな変更でDebian系でも動作します。このチュートリアルではrootとしてログインしていますが、一般的にはそうするべきではありませんが、チュートリアルを簡単にするためです。より安全に行いたい場合は、各コマンドの前に「sudo」を追加すれば動作します。

gateway_diagram2

オフィス内部のコンピュータ同士も通信できるため、プリンタやコンピュータを接続し、スイッチを介してネットワーク接続を共有することもできます。また、後でゲートウェイサーバーボックスにSambaを使用してすべてのコンピュータのためのネットワークバックアップドライブを比較的簡単に設定することもできます。このセットアップには多くの拡張性がありますが、今はシンプルに保ちます。

ゲートウェイサーバーで最初に行うべきことは、CentOSに付属するデフォルトのファイアウォールであるIptablesを構成して有効にすることです。eth1インターフェースからインターネットへのアウトバウンドトラフィックを許可するように指示します。Iptablesエントリを追加し、保存してIptablesを再起動する必要があります。

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE  
service iptables save  
service iptables restart

次に、カーネルに転送を許可するように指示する必要があります。これにより、ルールが機能します。

echo 1 > /proc/sys/net/ipv4/ip_forward

これは再起動するまでしか機能しないため、永続的にするために、好みのエディタを使用して/etc/sysconfig/networkに次の行を追加します。

FORWARD_IPV4=YES

次に、LAN内部のコンピュータにIPを割り当てるためのDHCPサーバーを設定する必要があります。次のようにDHCPサーバーをインストールします。

yum install dhcp

デフォルトでは、サンプルDHCPファイルが作成されるので、それを編集して実際のものと置き換えます。

cd /usr/share/doc/dhcp-whateverversionyouhave/  
vi dhcpd.conf.sample

私が使用しているものをコピー&ペーストするか、必要に応じて自分のものを編集できます。注意点として、あなたのネットワークは私のものとは異なるかもしれません。このファイルは、内部コンピュータに192.168.0.128から192.168.0.254のIP範囲を与え、サブネットマスクは255.255.255.0です。必要に応じて変更してください。また、ここで独自の値を使用する場合は、後でeth1の静的IP情報も一致させる必要があります。

ddns-update-style none; # keep it simple for now
ignore client-updates;  # here too
DHCPARGS=eth1;          # tells it what interface to listen on
subnet 192.168.0.0 netmask 255.255.255.0 {
# --- default gateway
       option routers                  192.168.0.1;   # gateway on your eth1 internal interface
       option subnet-mask              255.255.255.0; # subnet mask
       option domain-name              "example.com" # domain name given to client
       option domain-name-servers      209.242.10.10; # the IP of your ISP's nameservers you're using
       option time-offset              -18000;        # Eastern Standard Time - set to what you have
       range 192.168.0.128 192.168.0.254;             # the range of IP's your clients will get
       default-lease-time 21600;                      # how long the client's will keep the same IP
       max-lease-time 43200;
       # we want the nameserver to appear at a fixed address
       host ns {
               next-server ns1.ispserver.net;         # change to your ISP's nameservers
               hardware ethernet 00:09:5B:8E:05:67;   # hardware MAC
               fixed-address 209.242.10.10;           # your ISP's nameserver IP
      }
}

現在、現在のdhcp設定ファイルをバックアップし、先ほど作成したものを上書きします。

mv /etc/dhcpd.conf /etc/dhcpd.conf.old  
cp dhcpd.conf.sample /etc/dhcpd.conf

次に、DHCPサーバーを再起動します(エラーがないか設定を確認した後、エラーがある場合は/var/log/messagesにリストされます)ので、変更が適用されます。

service dhcpd configtest  
service dhcpd restart

次に、DHCPサーバーで行ったことと一致するようにeth1(内部)インターフェースを構成する必要があります。ファイル/etc/sysconfig/network-scripts/ifcfg-eth1を編集して、次のようにします。

DEVICE=eth1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.0.1
NETMASK=255.255.255.0
GATEWAY=10.1.10.43

少なくともGATEWAY IPを編集する必要があります。これは私のeth0インターフェースのIPです。あなたのeth0 IPが何であるかを確認するには、次のコマンドを実行します。

ifconfig

次のように表示されるはずです: eth0 inet addr:10.1.10.43、これが必要なものです。

次に、内部ネットワークを通じてDHCPリクエストを待ち受けるようにコンピュータに指示する必要があります。クライアントコンピュータがDHCPアドレスを探しているとき、255.255.255.255のIPアドレスを持つ誰にでも聞こえるようにブラストを送信しますので、DHCPサーバーにそのIPをリッスンするように指示する必要があります。

route add -host 255.255.255.255 dev eth1

これでセットアップをテストします。クライアントコンピュータの1台に行き、ゲートウェイが接続されているスイッチに接続すると(私の場合は安価な家庭用Netgear $30 8ポートスイッチモデル# FS608)、新しいDHCPサーバーを使用してIPを見つけ、インターネットをブラウジングできるはずです。

また、内部コンピュータを安全に保つために、チュートリアルで行った以上のことをブロックするようにファイアウォールを設定する必要があります。これは、次のコマンドを実行して構成ツールを使用して行うことができます。

setup

ファイアウォールに何をブロックするかを指示します。一般的なルールは、すべてをブロックし、必要なものだけを許可することですが、選択した場合は他の場所で詳細に読むことができます。

Share: X/Twitter LinkedIn

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

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