環境
PC : Ubuntu-22.04.1 server
LAN 内に設置して MacOS から ssh , remote desktop で接続する.
固定 IP にする理由
IP アドレスを管理するのは、ルーターが勝手にアドレスを与えて重複を防ぐのが間違いがなくて良い.
しかし、ルーターはアクセスする度に異なった IP アドレスを与えてしまうのだ.
ネットワーク内にあるサーバーをコントロールする場合、IP アドレスでコントロールする方が容易い.
複数のクライアントからssh 接続や remote desktop とかも確実に接続可能だ.
大きなネットワークではコンピューター名で名前解決してコンピューター名でアクセスする方法もあるが、めんどくさい.
したがって、サーバーを固定 IP アドレスに変更する.(つもりだったが、固定 IP アドレスを追加したことになりました.)
ネットワーク設定の確認
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eno2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether ……………………..
altname ……………………
inet 192.168.xxx.xxx/24 metric 100 brd 192.168.aaa.aaa scope global dynamic eno2
valid_lft 6818sec preferred_lft 6818sec
inet6 ……………………………….
サーバーによって表示が異なると思いますが、チェックする事柄は
eno2
inet 192.168.xxx.xxx/24
このアドレスはルーターがDHCP で割り振ったアドレス
/24 は サブネットマスク 255.255.255.0 と同じ意味です.
Ubuntu 固定 IP 設定
ネットワークの設定ファイルは
/etc/netplan/
の中のファイルに記入されています.
$ cd /etc/netplan/
/etc/netplan$ ls
00-installer-config.yaml
インストール時に設定したネットワークファイル
00-installer-config.yaml
/etc/netplan$ less 00-installer-config.yaml
DHCP を使った設定になっていました。
# This is the network config written by ‘subiquity’
network:
ethernets:
eno2:
dhcp4: true
version: 2
00-installer-config.yaml (END)
netplan を使った設定は、ここのサイトに書かれています.
固定IP ( static address , static IP address) の設定ファイル
To instead set a static IP address, use the addresses key, which takes a list of (IPv4 or IPv6), addresses along with the subnet prefix length (e.g. /24). DNS information can be provided as well, and the gateway can be defined via a default route:
network:
version: 2
renderer: networkd
ethernets:
enp3s0:
addresses:
- 10.10.10.2/24
nameservers:
search: [mydomain, otherdomain]
addresses: [10.10.10.1, 1.1.1.1]
routes:
- to: default
via: 10.10.10.1
※ renderer: networkd は自分のサイトではエラーが出たのであっさりと削除
固定IP設定ファイル作成
元々合った設定ファイルを最初の番号よりも大きい番号でコピーする.
00-inst………… –>> 01-inst……………
のような名前にする.
参照順序は、番号、アルファベット順で、ネットワーク設定を上書きしていくようです.
要するに、最初の設定ファイルを読み込み、次の設定ファイルを読み込むと何が良いかというと、後の設定ファイルが間違っていた場合は、先の設定ファイルでネットワークが設定されるので、よりセーフティーにできるからだろうと思っていました.
実は、ネットワーク設定を複数設定できるようです.
/etc/netplan$ sudo cp 00-installer-config.yaml 01-installer-config.yaml
コピーした設定ファイルを netplan のサイトを参照して書き換えます.
/etc/netplan$ sudo vi 01-installer-config.yaml
network:
version: 2
renderer: networkd
ethernets:
eno2:
addresses:
– 192.168.xxx.xxx/24
nameservers:
search:
addresses: [192.168.zzz.zzz] ルーターのネームサーバーのアドレス
routes:
– to: default
via: 192.168.yyy.yyy ルーターのアドレスでも良さそう
network:
version: 2
ethernets:
eno2:
addresses:
- 192.168.xxx.xxx/24
nameservers:
addresses: [192.168.zzz.zzz]
routes:
- to: default
via: 192.168.yyy.yyy
192.168.xxx.xxx/24
サーバーのアドレスはDHCPが自動で割り振るアドレス領域とルーターや他の機材等が使用していないアドレスならば、ユーザーが適当に決めて良い.(実験している環境は、自宅LAN内なので問題は少ないが)
192.168.zzz.zzz
サーバーがつながっているルーターのネームサーバーのアドレス
via: 192.168.yyy.yyy
デフォルトルート、繋がっているルーターのアドレスで良さそう.
設定の反映は、下のコマンドでできます.( 再起動不要みたい )
$ sudo netplan apply
/etc/netplan/
新たに作った設定ファイルをプラスしたので、2つの設定ファイルがあることになった
この場合、2つのIPアドレスでアクセスできることになりました.
つまり、インストール時にDHCP で割り振られた IP と 新たに作った固定IPの2つのIPアドレスで通信が可能になりました.
不必要ならば、一方のファイル名の拡張子を変更して適応すれば良いかな.