マシン名・IPアドレスの割り振り
マシン名・IPアドレスの割り振り
OS(RedHat9)をインストールした直後に、「マシン名・IPはどう設定するの?」というのがまず思い浮かぶと思います(1台のスタンドアロンで使うならそのままでもかまわないかもしれないですが)。その指定方法を説明していきます。すべてrootでログインして作業するようにしてください。なお、RedHatのバージョンやその他のディストリビューションでは設定が違う場合があります。ここでは、「RedHat9で」とお考えください。
インターネットにつなぐ前に「ローカルにて固定IPを振って確認」するようにしましょう。ファイアウォールなどの設定もせずにネットにつないで確認するのは非常に危険になりますので(作業中にパケットのログを見ていたのですが、ネットにつなぐと知らないIPからの不正アクセスがすぐにありました)。動的にIPを割り当てられるとしても、はじめは固定の(staticの)IPアドレスを振ってテスト&ファイアウォールの確認を行い、完了してから外部とのアクセステストを行います。
上記の「固定IP」というのは、192.168.0.0〜192.168.255.255の間の ローカルIPアドレスです。この範囲であれば、個人でも自由に使用することが できます。LAN内のアドレスではよく使われます。
複数のマシンを使ったネットワーク構成の概念は「ネットワーク構成」のページを参照してください。
マシン名の指定(router.xxxx.ne.jp)
「/etc/sysconfig/network」を開きます。ここで、ホスト名とデフォルトゲートウェイの指定を行います。
NETWORKING=yes HOSTNAME=router.xxxx.ne.jp GATEWAY=11.22.33.44
- NETWORKING
- yesを設定します。ネットワーク機能を有効にしています。
- HOSTNAME
- ここにホスト名を指定します。上の例では「router」がホスト名になります。後ろの「xxxx.ne.jp」はドメイン名となりますが、これは「ローカルのネットワークを束ねる名称」として見てつけておく方がいいでしょう。
これはプロバイダからもらった固定のドメインで統一するのがいいかと思います。
- GATEWAY
- ゲートウェイのIPアドレスを指定します。例として「11.22.33.44」をマシンのゲートウェイのIPアドレス(自分自身)としています。外部に接続するマシンの場合は、これはグローバルIPアドレスになります。
ホストとIPとを結びつける(router.xxxx.ne.jp)
「/etc/hosts」にて、IPアドレスとホスト名を結びつけます。
127.0.0.1 localhost.localdomain localhost 11.22.33.44 router.xxxx.ne.jp router
このときの2行目が追加したものです。「router」という表記を「router.xxxx.ne.jp」と認識できますし、IPアドレスである「11.22.33.44」でも認識できるようにします。この設定はローカルマシン(localhost)内でのみ有効です。外部のマシン(これがたとえ同じネットワーク領域内であっても)の名称の名前解決はDNS?にて行います。「/etc/hosts」ですべて対応を書いてもいいのですが、面倒ですしね。なにしろ、同期をとりにくいですから。
IPアドレスの指定(router.xxxx.ne.jp)
IPアドレスは、マシンに対してつけるのではなくNIC(LANカード)ごとにつける点を注意してください。概念は「ネットワーク構成」を参照してください。
ここの1台のルータマシンにて3つのNICを挿し、グローバル領域・DMZ領域・LAN領域を分けて管理する例を示します。
以下は、ルータサーバマシンでの3枚のNICの設定を行う例です。
1枚目のNICの設定を「/etc/sysconfig/network-scripts/ifcfg-eth0」にて行います。
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=11.22.33.44
2枚目のNICの設定を「/etc/sysconfig/network-scripts/ifcfg-eth1」にて行います。なお、「ifcfg-eth1」は初期状態ではファイルが存在しないので新規に作成します。これは、DMZのゲートウェイとしての情報を指定しているとします。
DEVICE=eth1 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.10.1 NETMASK=255.255.255.0 BROADCAST=192.168.10.255 NETWORK=192.168.10.0
同様に2枚目のNICの設定を「/etc/sysconfig/network-scripts/ifcfg-eth2」にて行います。これは、LANのゲートウェイとしての情報を指定しているとします。
DEVICE=eth2 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 BROADCAST=192.168.0.255 NETWORK=192.168.0.0
- DEVICE
- NICを表す識別IDを指定します。
- BOOTPROTO
- 静的な固定IPアドレスを指定する場合はstaticとします。
- ONBOOT
- OS起動時にデバイスを認識するかどうかを指定します。
- IPADDR
- NICでのIPアドレスを指定します。
- NETMASK
- ネットマスクを指定します。
- BROADCAST
- ブロードキャストアドレスを指定します。IPアドレスの末尾を255にしたものが多いと思います。
- NETWORK
- ネットワークアドレスを指定します。IPアドレスの末尾を0にしたものが多いと思います。
ネットマスク・ブロードキャストについては「ネットワーク構成」の説明を参照してください。
ネットワークサービスの再起動
「/etc/rc.d/init.d/network restart」として、ネットワークサービスを再起動します。が、「/etc/sysconfig/network」を変更した場合は念のためにOSを再起動するようにしてください。
その後、
ifconfig
と入力し、ネットワークカードのeth0/eth1/eth2に対してIPアドレスが適切に割り振られているか確認してください。
また、
route -n
にて、eth0/eth1/eth2のそれぞれがルーティングテーブルに存在するかを確認してください。これが1つでも欠けていると設定に失敗していることになります。(IPアドレスのバッティング、ネットワークアドレスが同じNICの設定、ネットマスク・ネットワークアドレス・ブロードキャストアドレスの指定ミスなどが考えられます)
DMZ内のマシンでのネットワーク設定(www.xxxx.ne.jp)
DMZ内の「192.168.10.2」のマシン名を「www」としてWebサーバにしたいとします。この場合の設定は以下のようになります。
/etc/sysconfig/network
NETWORKING=yes HOSTNAME=www.xxxx.ne.jp GATEWAY=192.168.10.1
GATEWAYの指定が、ルータサーバ(router.xxxx.ne.jp)のDMZ側のゲートウェイIPアドレスになっている点に注意してください。ゲートウェイは「同じネットワーク領域内」(ここでは192.168.10.x 内)である必要があります。
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 BOOTPROTO=static ONBOOT=yes IPADDR=192.168.10.2 NETMASK=255.255.255.0 BROADCAST=192.168.10.255 NETWORK=192.168.10.0
これでネットワークサービスを再起動後、
route -n
としたときに、一番下にデフォルトゲートウェイとして「192.168.10.1」があるか確認してください。ない場合は設定に失敗しているかNICが壊れているか、です。
同様に他のサーバ・クライアントマシンでのネットワーク設定を行います。LAN内のネットワークでは、上図の例だとゲートウェイは192.168.0.1になり、ネットマスクは255.255.255.0、ネットワークアドレスは192.168.0.0、ブロードキャストアドレスは192.168.0.255となります。
注意事項
それぞれのマシンのNICのドライバが正しくインストールされているか「ifconfig」で確認してください。3枚挿している場合はeth0/eth1/eth2が表示されるはずです。(動的にデバイスが起動する場合(PPPoEなど)は、eth0が表示されていない場合があります。この場合は「ifconfig -a」で確認します)
また、「ケーブルはHUB経由で該当するマシンにすべて接続」するようにしてください。マシン同士が物理的につながっていないと、場合によっては設定が有効にならない場合があります。
Future's Laboratory 技術格納庫 2004-2013 Yutaka Yoshisaka.