最近多くなったネットワーク設定絡みの記事。
完全に自分の備忘録です (≡人≡;)
目次
設定方法
GUI
GUIで設定する際は、標準で導入されている"NetworkManager"での設定を推奨します。
※"NetworkManager"を使用すると、後述するCUIでの設定ファイル"/etc/network/interfaces.d/base"は削除されます
概要
- タスクバーのネットワークアイコンから"接続の編集"を選択
- IPv4設定、IPv6設定を登録し、[保存]ボタンをクリック
設定サンプル
NetworkManagerで設定すると、下記ファイルが書きだされます。
変更前
$ sudo cat /etc/NetworkManager/system-connections/有線接続\ 1
[connection]
id=有線接続 1
uuid=fb8e7b93-1b7c-3d5e-a13c-89bac03d7732
type=ethernet
autoconnect-priority=-999
permissions=
secondaries=
timestamp=1512594692
[ethernet]
duplex=full
mac-address=D4:3D:7E:##:##:##
mac-address-blacklist=
[ipv4]
dns-search=
method=auto
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
変更後
$ sudo cat /etc/NetworkManager/system-connections/有線接続\ 1
[connection]
id=有線接続 1
uuid=fb8e7b93-1b7c-3d5e-a13c-89bac03d7732
type=ethernet
autoconnect-priority=-999
permissions=
secondaries=
timestamp=1512594692
[ethernet]
duplex=full
mac-address=D4:3D:7E:##:##:##
mac-address-blacklist=
[ipv4]
address1=192.168.0.2/24,192.168.0.1
dns=8.8.8.8;
dns-search=test;
may-fail=false
method=manual
[ipv6]
addr-gen-mode=stable-privacy
dns-search=
ip6-privacy=0
method=auto
CUI
"NetworkManager"を使わずに従来通り手動で設定する場合は、事前に"NetworkManager"を無効にします。
※有効のままだと"NetworkManager"が設定を上書きするため
NetworkManager無効化
$ systemctl status network-manager.service
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor p
Active: active (running) since 木 2017-12-07 06:34:15 JST; 9s ago
Docs: man:NetworkManager(8)
Main PID: 2690 (NetworkManager)
CGroup: /system.slice/NetworkManager.service
├─2690 /usr/sbin/NetworkManager --no-daemon
├─2699 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts
└─2725 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helpe
MS-7835:~$ systemctl stop network-manager.service
MS-7835:~$ systemctl status network-manager.service
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; enabled; vendor p
Active: inactive (dead) since 木 2017-12-07 06:34:35 JST; 2s ago
Docs: man:NetworkManager(8)
Process: 2690 ExecStart=/usr/sbin/NetworkManager --no-daemon (code=exited, sta
Main PID: 2690 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/NetworkManager.service
├─2699 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts
└─2725 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helpe
MS-7835:~$ sudo systemctl disable network-manager.service
[sudo] link のパスワード:
Synchronizing state of network-manager.service with SysV init with /lib/systemd/systemd-sysv-install...
Executing /lib/systemd/systemd-sysv-install disable network-manager
insserv: warning: current start runlevel(s) (empty) of script `network-manager' overrides LSB defaults (2 3 4 5).
insserv: warning: current stop runlevel(s) (0 1 2 3 4 5 6) of script `network-manager' overrides LSB defaults (0 1 6).
Removed symlink /etc/systemd/system/dbus-org.freedesktop.nm-dispatcher.service.
Removed symlink /etc/systemd/system/multi-user.target.wants/NetworkManager.service.
MS-7835:~$ systemctl status network-manager.service
● NetworkManager.service - Network Manager
Loaded: loaded (/lib/systemd/system/NetworkManager.service; disabled; vendor
Active: inactive (dead) since 木 2017-12-07 06:34:35 JST; 1min 18s ago
Docs: man:NetworkManager(8)
Main PID: 2690 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/NetworkManager.service
├─2699 /usr/sbin/dnsmasq --no-resolv --keep-in-foreground --no-hosts
└─2725 /sbin/dhclient -d -q -sf /usr/lib/NetworkManager/nm-dhcp-helpe
設定サンプル
インターフェース名を調べる
以下の例では"enp2s0"です。
$ ip addr
2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether d4:3d:7e:9a:d5:5e brd ff:ff:ff:ff:ff:ff
inet 192.168.2.15/24 brd 192.168.2.255 scope global dynamic enp2s0
valid_lft 85764sec preferred_lft 85764sec
inet6 240b:11:8d80:4500:694e:f835:b500:c1a/64 scope global temporary dynamic
valid_lft 604167sec preferred_lft 85650sec
inet6 240b:11:8d80:4500:da09:a824:e306:27b/64 scope global mngtmpaddr
変更前
$ cat /etc/network/interfaces
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
変更後
インターフェース名{enp2s0}は適宜書き換えてください。
$ cat /etc/network/interfaces
auto enp2s0
iface enp2s0 inet static
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.254
# dns-nameservers 192.168.0.1 8.8.8.8
再起動
再起動後に設定が反映されます。
ネットワークサービス再起動でも設定が反映されることがあるようですが、私の環境ではダメでした。
$ sudo /etc/init.d/networking restart
※"NetworkManager"は再起動しなくても反映するようですが、反映タイミングが良くわからないため再起動を推奨します