CentOS 7でローカルIPを固定する

いちいちIP調べて、ホストマシンからsshの入力して…は大変なので、TeraTermのショートカットにIPを設定して、ダブルクリック一発でアクセスしたいところです。

目次


必要なもの

以下4点を調べておけばスムーズ。

決めたいローカルアドレスはこだわりなければ、現在割り当てられているのでいいと思います。

IP、ネットマスク

ifconfigでネットワークインタフェースを確認。

f:id:canning:20190518152111p:plain:w600

RUNNINGの内、127.0.0.1は自身を指すものなので除外。
enp0s3が外とやり取りしている。

IPとネットマスクを控える。

ゲートウェイ

routedefaultを見る。

f:id:canning:20190518153223p:plain:w600

自分の環境だとデフォルトゲートウェイntt.setupがありました。
想定だと192.168.1.1だったので、ちょっと想定外。
nslookupを打つとちゃんと192.168.1.1が返ってくる。

どういうことなのか調べましたが、おそらくルータの機能だと思います。
というのも、ルータの中にはDNSルーティング機能なるものを備えているのがあるらしく、
内部DNSサーバが特定のホストに対して、名前解決を設定できるみたいです。

DNS

/etc/resolv.confを参照、控える。

network-scriptsを編集に行く

設定値を調べ終わったら設定ファイルを編集に行く。
/etc/sysconfig/network-scripts配下にインタフェースの設定ファイルがある。

f:id:canning:20190518152336p:plain:w600

backupを念のため取っておく。。。

中身はこんな感じ。

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp0s3"
UUID="xxx"
DEVICE="enp0s3"
ONBOOT="yes"

上記の値の中で、BOOTPROTOを下記のように変更。

BOOTPROTO=static

DHCPをやめる。
で、さらに下記を追記する。

IPADDR="192.168.1.77" -> 固定したいローカルアドレス
NETMASK="255.255.255.0" -> ネットマスク
GATEWAY="192.168.1.1" -> デフォルトゲートウェイ
DNS1="192.168.1.1" -> DNS
DNS2="2408:68:425:0:225:dcff:fe35:82e5" -> DNS

設定が終わったら

service network restart

で再起動。

参考

【初心者向け】Linux PCのIPアドレスを確認する方法まとめ | LFI
[Linux]CentOSで手動で固定IPアドレスの設定を行う | QUALL - blogQUALL – blog
How to configure a static IP address in CentOS 7 - TechRepublic
CentOS 参照するDNSサーバの設定