本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
/etc/network/interfaces
ここの書き方は基本的に昔と変わっていない
昔は1枚目のカードはeth0と決まっていたけど環境によって変わるっぽい。
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
source /etc/network/interfaces.d/*
# The loopback network interface
auto lo
iface lo inet loopback
allow-hotplug eno1
iface eno1 inet static
address 192.168.0.60
network 192.168.0.0
netmask 255.255.255.0
gateway 192.168.0.3
# broadcast 192.168.0.255
これを有効にするためには、
# systemctl restart ifup@eno1
を実行する。
すると、
root@debian:/etc/network# 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: eno1: <BROADCAST,MULTICAST,DYNAMIC,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 34:f8:8f brd ff:ff:ff:ff:ff:ff
altname enp3s0f0
inet 169.254.37.84/16 brd 169.254.255.255 scope global eno1
valid_lft forever preferred_lft forever
inet 192.168.0.60/24 brd 192.168.200.255 scope global eno1
valid_lft forever preferred_lft forever
inet6 fe80::3617:ebff:feef:f88f/64 scope link
valid_lft forever preferred_lft forever
固定IPアドレスが有効になった。
しかし不可解な事に 169.254のネットワークが先に優先されてしまう。
# ip r
default dev eno1 scope link
169.254.0.0/16 dev eno1 proto kernel scope link src 169.254.66.227
192.168.200.0/24 dev eno1 proto kernel scope link src 192.168.200.60
インストールする時の方法が悪かったかも。
eth0,eth1 の2つのポートがあるLAN NIC で、dhcpサーバのない環境のeth0で、固定IPはふらずに有線接続しておいて、eth1にはDHCPサーバ動いており、こちらの方でネットワークインストールした。これが原因なのか、eth0はリンクローカルアドレスが優先されるようになっており、いくら
/etc/network/interfaces
の設定をいじっても、リンクローカルが優先される。再起動されるとstaticで設定した内容も飛んでしまう始末。
結局断念して、もう一度インストールし直し。今度はeth0に固定IPを振ってインストールしたにも関わらず、ネットワークが有効にならない。
syslogを確認すると、ifupしようとしてはいるけど、起動に失敗している。
root@postgres:/var/log# egrep 'eno1' syslog
Jan 5 06:56:34 postgres systemd[1]: Started ifup for eno1.
Jan 5 06:56:34 postgres kernel: [ 1.165434] tg3 0000:03:00.0 eno1: renamed from eth0
Jan 5 06:56:35 postgres avahi-daemon[466]: Joining mDNS multicast group on interface eno1.IPv4 with address 192.168.0.60.
Jan 5 06:56:35 postgres avahi-daemon[466]: New relevant interface eno1.IPv4 for mDNS.
Jan 5 06:56:35 postgres avahi-daemon[466]: Registering new address record for 192.168.200.60 on eno1.IPv4.
Jan 5 06:56:35 postgres avahi-daemon[466]: Withdrawing address record for 192.168.0.60 on eno1.
Jan 5 06:56:35 postgres avahi-daemon[466]: Leaving mDNS multicast group on interface eno1.IPv4 with address 192.168.200.60.
Jan 5 06:56:35 postgres avahi-daemon[466]: Interface eno1.IPv4 no longer relevant for mDNS.
Jan 5 06:56:35 postgres sh[476]: ifup: failed to bring up eno1
Jan 5 06:56:35 postgres systemd[1]: ifup@eno1.service: Main process exited, code=exited, status=1/FAILURE
Jan 5 06:56:35 postgres systemd[1]: ifup@eno1.service: Failed with result 'exit-code'.
明確な理由が分かりません。
とりあえず、リンクローカルが優先されてしまうのは、ifup@eno1.serviceがFailedしているのが原因ようです。
Jan 5 06:56:39 postgres avahi-daemon[466]: Joining mDNS multicast group on interface eno1.IPv6 with address fe80::3617:ebff:feef:f88f.
Jan 5 06:56:39 postgres avahi-daemon[466]: New relevant interface eno1.IPv6 for mDNS.
Jan 5 06:56:39 postgres avahi-daemon[466]: Registering new address record for fe80::3617:ebff:feef:f88f on eno1.*.
Jan 5 06:57:18 postgres avahi-daemon[466]: Joining mDNS multicast group on interface eno1.IPv4 with address 169.254.62.85.
Jan 5 06:57:18 postgres avahi-daemon[466]: New relevant interface eno1.IPv4 for mDNS.
Jan 5 06:57:18 postgres avahi-daemon[466]: Registering new address record for 169.254.62.85 on eno1.IPv4.
Jan 5 06:57:21 postgres connmand[469]: eno1 {add} address 169.254.62.85/16 label eno1 family 2
Jan 5 06:57:21 postgres connmand[469]: eno1 {add} route 169.254.0.0 gw 0.0.0.0 scope 253 <LINK>
Jan 5 06:57:21 postgres connmand[469]: eno1 {add} route 0.0.0.0 gw 0.0.0.0 scope 253 <LINK>
Jan 5 06:59:30 postgres systemd[1]: Started ifup for eno1.
その後、IPv6が有効になり、169.254.のアドレスが振られ、Started ifupしています。
改善に向けて
IPv6を無効にしてみる
/etc/syscntl.conf
net.ipv6.all.disable_ipv6 = 1
を追記
しかし、改善せず。
wifi機能のないサーバにwifiの管理ができるアプリが入った事が原因かとも思い
apt-get remove --purge wpasupplicant
してみたけど改善せず。
あとは、ファームウエアの問題か?
解決・回避策
これは、解決という状態じゃないかもしれませんが、インストール時ウィンドウマネージャLXDEをインストールしない状態だと問題なくなりました。
インストール後再起動ですんなり、固定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: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 34:17:eb:f brd ff:ff:ff:ff:ff:ff
altname enp3s0f0
inet 192.168.0.60/24 brd 192.168.200.255 scope global eno1
valid_lft forever preferred_lft forever
inet6 fe80::3617:ebff:feef:f88f/64 scope link
valid_lft forever preferred_lft forever
3: eno2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 34:17:eb:ef:f8:90 brd ff:ff:ff:ff:ff:ff
altname enp3s0f1
syslogにも余計なものが全く出ていません。
# egrep 'eno1' /var/log/syslog
Jan 5 19:40:53 postgres systemd[1]: Started ifup for eno1.
Jan 5 19:40:53 postgres kernel: [ 1.030191] tg3 0000:03:00.0 eno1: renamed from eth0
Jan 5 19:40:53 postgres sh[469]: eno1=eno1
Jan 5 19:40:57 postgres kernel: [ 6.537053] tg3 0000:03:00.0 eno1: Link is up at 1000 Mbps, full duplex
Jan 5 19:40:57 postgres kernel: [ 6.537058] tg3 0000:03:00.0 eno1: Flow control is off for TX and off for RX
Jan 5 19:40:57 postgres kernel: [ 6.537060] tg3 0000:03:00.0 eno1: EEE is disabled
Jan 5 19:40:57 postgres kernel: [ 6.537070] IPv6: ADDRCONF(NETDEV_CHANGE): eno1: link becomes ready
今回の要件は、サーバ PostgreSQL データベースの設定です。ウィンドウマネージャは必要ないのですが、管理する時にウィンドウマネージャがあればウィンドウを並べて管理できるかなと思ったくらいで、本来は不要です。
このようなよく分からない追求しないといけない事案がでるくらいなら、必要最低限に絞ってしまった方がいいやと思いました。
今回は、ウィンドウマネージャなしで進めたいと思います。
まとめ
普段あまり触らない、情報があまりないOSを管理する場合、必要最小限、メンテナンス範囲も絞って運用した方がいいなと感じます。
もしアップデートした際に何か不具合がおきたら、またそちらもメンテに時間を費やさないといけないし、それが元で、そのほかのパッケージにも何か不具合を起こすようだと目もあてられません。
今回はネットワークがうまく利用できなくなってしまう状態だったので、データベース運用としては致命的です。