Fedora 26 가상 머신이 있습니다. GNOME에 로그인하면 네트워크 연결이 표시됩니다. GNOME은 장치의 네트워크 프로필을 "자동 연결" 및 "모든 사용자와 공유"("ID" 섹션)로 표시합니다. 가상 머신에 SSH로 연결할 수 있지만 때로는 SSH로 연결할 수 없는 경우가 있습니다. ~까지뒤쪽에먼저 gdm(GNOME)에 로그인합니다.
가상 머신을 다시 시작하면 이런 일이 발생하지 않습니다. 그래서 VM이 계속 실행되는 동안(로그인하지 않은 상태에서) 호스트를 일시 중지하면 이런 일이 발생한다고 생각합니다.
GNOME에 로그인하면 다시 연결되도록 하는 가상 머신에서는 어떤 일이 발생합니까? 연결 끊김은 소프트웨어에서 수정될 수 있는 버그입니까?
systemctl status
이는 NetworkManager와 network.service가 모두 운영 체제에서 제공하는 기본 상태에 있음을 보여줍니다.
● network.service - LSB: Bring up/down networking
Loaded: loaded (/etc/rc.d/init.d/network; generated; vendor preset: disabled)
● NetworkManager.service - Network Manager
Loaded: loaded (/usr/lib/systemd/system/NetworkManager.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2017-09-17 17:43:48 BST; 1 day 15h ago
로그인 후 nmcli:
$ nmcli con
NAME UUID TYPE DEVICE
Wired connection 1 937653fb-890f-3b19-97b8-b98c8eafcdc5 802-3-ethernet ens3
virbr0 6e568806-d720-42ed-a555-0a1c50f1a36c bridge virbr0
ens3 afba101e-6470-3699-b87b-932ab4efe634 802-3-ethernet --
다른 MAC 주소를 가진 이전 장치에 대한 사용되지 않은 연결 "ens3"에 대한 프로필만 찾을 수 있었습니다. VM은 Fedora 25 VM의 업그레이드된 복제본입니다. 아마도 복제 시 MAC 주소가 변경되었을 것입니다.
$ cd /etc/NetworkManager/system-connections/ && ls
$ cd /etc/sysconfig/network-scripts/ && ls ifcfg-*
ifcfg-ens3
ifcfg-lo
$ cat ifcfg-ens3
HWADDR=52:54:00:A7:3B:22
TYPE=Ethernet
BOOTPROTO=dhcp
...
NAME=ens3
UUID=afba101e-6470-3699-b87b-932ab4efe634
ONBOOT=yes
AUTOCONNECT_PRIORITY=-999
$ ip link show dev ens3
2: ens3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
link/ether 52:54:00:59:9b:47 brd ff:ff:ff:ff:ff:ff
답변1
시스템 로그에는 GNOME에 로그인하지 않으면 문제가 해결되지만 2분만 기다리면 된다고 나와 있습니다 :).
$ journalctl -b -u NetworkManager
...
Sep 18 23:04:35 fedora26-vm dhclient[15040]: bound to 192.168.122.157 -- renewal in 1450 seconds.
Sep 19 08:45:51 fedora26-vm NetworkManager[656]: <info> [1505807151.7261] dhcp4 (ens3): state changed bound -> expire
Sep 19 08:45:51 fedora26-vm NetworkManager[656]: <info> [1505807151.7698] dhcp4 (ens3): canceled DHCP transaction, DHCP client pid 15040
Sep 19 08:45:51 fedora26-vm NetworkManager[656]: <info> [1505807151.7699] dhcp4 (ens3): state changed expire -> done
Sep 19 08:45:51 fedora26-vm NetworkManager[656]: <info> [1505807151.7701] device (ens3): scheduling DHCPv4 restart in 120 seconds, 3 tries left (reason: lease expired)
Sep 19 08:47:51 fedora26-vm NetworkManager[656]: <info> [1505807271.7908] dhcp4 (ens3): activation: beginning transaction (timeout in 45 seconds)
Sep 19 08:47:51 fedora26-vm NetworkManager[656]: <info> [1505807271.7972] dhcp4 (ens3): dhclient started with pid 15271
Sep 19 08:47:51 fedora26-vm dhclient[15271]: DHCPDISCOVER on ens3 to 255.255.255.255 port 67 interval 5 (xid=0x37e5e131)
Sep 19 08:47:51 fedora26-vm dhclient[15271]: DHCPREQUEST on ens3 to 255.255.255.255 port 67 (xid=0x37e5e131)
Sep 19 08:47:51 fedora26-vm dhclient[15271]: DHCPOFFER from 192.168.122.1
Sep 19 08:47:51 fedora26-vm dhclient[15271]: DHCPACK from 192.168.122.1 (xid=0x37e5e131)
...
(08:45:51은 정확히 호스트 로그에 시스템이 일시 중지 상태에서 깨어난 것으로 표시되는 시간입니다.)
DHCP 임대가 만료된 것으로 올바르게 인식됩니다. 그러나 시스템은 사전에 임대 갱신을 시도하지 않았다는 사실을 인식하지 못하는 것 같습니다. 방금 시도했지만 실패했다고 가정하므로 다시 시작하기 전에 시간 초과를 설정합니다. 나에게는 버그처럼 보입니다.