■
Linuxの固定IP設定
目的
今回はLinuxの固定IPの設定についてです。
サーバや組み込みなどではDHCPを用いたIPアドレスの割当ではなく、事前にデバイスとIPアドレスが関連付けられている固定IPの方が多く用いられます。
今回は、そんな任意のIPアドレスの割当方法をやっていきたいと思います。
方法
では、ここからはIPアドレスの設定を行っていきます。
Linuxの中でも、ディストリビューションによって採用するソフトが変わるため、今回はArchLinuxなどnetctlを使うOSをメインにやっていきます。
準備
まずは下記のものを用意してください
- ネットワークに接続したLinuxマシン
以上です。
一時的なIPアドレスの割当
この方法では、再起動すると設定が初期化されてしまうので、恒久的な設定をしたい場合は後述の方法で行ってください。
この方法は、接続したDHCP機能がないデバイスと通信がしたいときなどに一時的に使用します。
まずは、設定するデバイス名を調べてください。
$ ifconfig
ArchLinuxの場合
ipを使って一時的に設定します。
デバイス名がわかったら、下記のコマンドを実行します。IPアドレス、サブネットマスク、デバイス名は適宜設定してください。
$ sudo ip addr add 192.168.7.2/24 dev enp4s0"
もう一度ifconfigで確認して、IPアドレスが割り当てられていたら成功です。
恒久的なIPアドレスの割当
この方法で設定したIPアドレスは再起動しても設定が維持されます。
多くの場合はこちらの方法を使います。
まずは、設定するデバイス名を調べてください。
$ ifconfig
ArchLinuxの場合
ArchLinuxはnetctlを採用しているため、設定にはnetctlを使います。
特徴として、デバイスごとに設定ファイルを作成して有効にします。
まずは、設定ファイルのテンプレートをコピーします。
$ sudo cp /etc/netctl/examples/ethernet-static /etc/netctl/staticip
コピーしてきたファイルは下記のようなものになっています。
Description='A basic static ethernet connection' Interface=eth0 Connection=ethernet IP=static Address=('192.168.1.23/24' '192.168.1.87/24') #Routes=('192.168.0.0/24 via 192.168.1.2') Gateway='192.168.1.1' DNS=('192.168.1.1')
インターフェイスやIPアドレスなどは適宜設定してください。
私の環境では、下記のように設定ました。
Description='A basic static ethernet connection' Interface=enp4s0 Connection=ethernet IP=static Address=('192.168.1.23/24') Gateway='192.168.1.1' DNS=('8.8.8.8')
ファイルを保存したら次に、有効にします。
$ sudo netctl enable staticip
再起動後に固定IPが有効になります。
$ sudo reboot
2015/10/21追記
上記方法ではうまくいかない場合があります。 その場合は下記方法を試してみてください。
$ sudo systemctl stop netctl-ifplugd@eth0 $ sudo netctl stop-all $ sudo systemctl disable netctl-ifplugd@eth0.service $ sudo systemctl enable netctl@eth0 $ sudo netctl enable staticip
Ubuntu・Debianの場合
UbuntuやDebianでは、/etc/network/interfacesを編集することで実現します。
/etc/network/interfacesを開いてください。
ファイルには下記のようなものが書いてあると思います。
auto lo iface lo inet loopback
これはloの設定です。
今回は、さらにこれに設定したいデバイスの情報を追加していきます。
このファイルの下に下記の情報を追加してください。 デバイス名・アドレス・ネットマスクは適宜変更してください。
auto eth0 iface eth0 inet static address 192.168.1.200 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 8.8.8.8
ファイルを保存し、再起動後に固定IPが有効になります。
$ sudo reboot
おわりに
わからないことなどがありましたら、ご質問だくさい。2015/7/02