Debian GNU/Linux(lenny)をインストールしてみる:IPアドレスをスタティックに指定する

仮想マシン上のDebianですが、現時点ではDHCPを使って動的にIPアドレス割り当てられているようになっているのだけど、それだと都合が悪いことも出くる。

IPアドレスを設定している設定ファイルは、"/etc/network/interfaces"なので、ちょっと中身を覗いてみると

debian:~# more /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

と書いてあって、eth0というネットワークインターフェースに関する設定は、最後の2行。
この部分を書き換えて、DHCPによる動的なIPアドレス割り当てから任意のIPアドレスを静的に割り当てるように変更をすることにします。

それと、設定変える前に、マシンに割り当てるIPアドレスを決めて、ネットマスクやブロードキャストアドレス、ネットワークアドレス、デフォルトゲートウェイを調べておきましょう。


まずは、エディタをインストール

Linuxに限らず、UNIX系のOSの殆どは、設定ファイルはテキストファイルであることが多いので、テキストエディタを使ってファイルを書き換えることで設定が変更できる様になっています。
Debianでも最低限のパッケージでインストールした状態であっても、viというテキストエディタがインストールされているので、それを使うというのも手なんだけど、もうすこしWindowsやMacにあるようなエディタライクなものということで、"emacs"をインストールします。

インストール自体は、rootになって

debian:~# aptitude install emacs22-nox

を実行すれば、依存関係も自動的に解決してインストールが完了するはずです。

設定ファイルを書き換える

"emacs"のインストールが終わったところで、設定ファイルを書き換えていきます。
設定ファイルの書き換えるにはrootになって、次のようにemacsを起動します。

debian:~# emacs /etc/network/interfaces

emacsが起動したら、下のように変更と追記をします。

allow-hotplug eth0
#iface eth0 inet dhcp
iface eth0 inet static
  address 172.16.0.112
  netmask 255.255.255.0
  broadcast 172.16.0.255
  network 172.16.0.0
  gateway 172.16.0.254
  dns-nameserver 172.16.0.254 8.8.8.8

まず、元々の最終行だった"iface eth0 inet dhcp"の先頭に"#"を追記して、この行をコメントしします。次の行に"iface eth0 inet static"と入力して、eth0に対して静的にアドレスを割り当てることを宣言します。
続いて"address 172.16.0.112"で仮想マシンに割り当てるIPアドレスを指定、"netmask"、"broadcast"、"network"、"gateway"に予め調べておいた、ネットマスク、ブロードキャストアドレス、ネットワークアドレス、デフォルトゲートウェイをそれぞれ記述します。最後に"dns-nameserver"に仮想マシンの接続されているネットワークで利用可能なDNSサーバのIPアドレスで記述します。

間違いなく入力したことを確認したら、"control"キーを押しながら"x"キー→"c"キーとタイプすると、編集した内容で保存するのか聞いてくるので"y"をタイプして、emacsを終了します。

これで、IPアドレス変更の準備が終わったので、設定ファイルの内容が正しく反映されるかの確認も含めて、サーバの再起動をします。

"shutdown -r now"とタイプして、サーバを再起動。少し時間を置いてから、sshクライアントから、さっきサーバに設定したIPアドレスを指定して接続できるか試してみましょう。

[soukaku@Messiah|~]$ ssh soukaku@172.16.0.112
The authenticity of host '172.16.0.112 (172.16.0.112)' can't be established.
RSA key fingerprint is f7:66:18:a6:0a:33:a3:42:3d:1c:b5:dc:8d:1e:29:6e.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '172.16.0.112' (RSA) to the list of known hosts.
soukaku@172.16.0.112's password:
Linux debian 2.6.26-2-686 #1 SMP Thu Nov 25 01:53:57 UTC 2010 i686
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Sat Jan 29 17:29:01 2011 from 172.16.0.254
soukaku@debian:~$

上のように接続が出来れば、OKということになります。

トラックバック(0)

コメントする