ネットワーク設定 · 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」を追加すれば動作します。

オフィス内部のコンピュータ同士も通信できるため、プリンタやコンピュータを接続し、スイッチを介してネットワーク接続を共有することもできます。また、後でゲートウェイサーバーボックスに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ファイアウォールに何をブロックするかを指示します。一般的なルールは、すべてをブロックし、必要なものだけを許可することですが、選択した場合は他の場所で詳細に読むことができます。
新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。