PRO가 활성화된 4GB Raspberry Pi 4b에 Ubuntu Server 22.04 LTS를 새로 설치합니다. 처음 부팅할 때 cloud-init 시퀀스가 완료될 때까지 기다려야 한다는 사실을 깨닫지 못했기 때문에 콘솔에 너무 빨리 로그인하여 문제를 일으켰을 수도 있습니다.
Ubuntu Server 22.04 LTS용 부팅 가능한 미디어를 생성하는 Raspberry Pi Imager에서 고급 옵션을 사용하여 Wi-Fi SSID와 비밀번호를 지정했습니다.
서버는 RPi4의 eth0 인터페이스를 불러오고 내 라우터에서 DHCP 주소 예약을 정상적으로 가져옵니다. 유선 연결을 끊기 위해 사용해야 하는 내장형 Broadcom Wi-Fi 인터페이스에 대한 IP를 얻지 못할 뿐입니다.
나는 netplan 설정 기사를 읽었고 Wi-Fi 작동에 관한 다양한 포럼의 많은 게시물을 살펴보았습니다. 지난 4일 동안 모든 종류의 작업을 시도했지만 Server 22.04 LTS에서 내장된 RPi4b Wi-Fi 인터페이스가 작동하지 않습니다.
PRO가 활성화된 Ubuntu Desktop 22.04 LTS는 eth0 및 wlan0 인터페이스를 모두 제공합니다. NetworkManager와 함께 netplan을 사용하는 동안 둘 다 내 라우터의 MAC 예약에서 DHCP IP를 얻습니다.
dmesg에는 eth0 링크가 작동 중이라는 언급이 있지만 wlan0 또는 phy0에 대한 언급은 없습니다. dmesg에서 무선과 관련된 유일한 줄은 절전 활성화에 관한 몇 가지 cfg80211 줄입니다.
서버 22.04는 networkd와 함께 netplan을 사용하여 인터페이스를 불러옵니다. 내가 아무 소용이 없도록 노력한 것은 다음과 같습니다. eth0은 IP4 벌금을 받지만 wlan0에는 IP가 할당되지 않습니다. /etc/netplan에서는 이와 같이 01-network-manager-all.yaml에서 두 인터페이스를 함께 정의해 보았습니다.
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: yes
wifis:
wlan0:
dhcp4: yes
access-points:
"MySSID":
password: "MyPWD"
"선택적:" 키를 생략했습니다. yaml 파일에 해당 줄이 있든 없든 결과에는 차이가 없습니다. 인터페이스 중 하나 또는 둘 다에 해당 키를 추가하면 "선택적:"이 "true" 또는 "false"로 설정된 것과 아무런 차이가 없습니다.
netplan --debug try(또는 생성 또는 적용)는 내가 시도한 구성이 여러 번 유효하며 나에게 좋지 않은 내용을 표시하지 않는다고 말합니다. 다음은 일부 출력입니다.
starting new processing pass
wlan0: adding wifi AP 'MySSID'
We have some netdefs, pass them through a final round of validation
wlan0: setting default backend to 1
Configuration is valid
eth0: setting default backend to 1
Configuration is valid
Generating output files..
openvswitch: definition eth0 is not for us (backend 1)
NetworkManager: definition eth0 is not for us (backend 1)
Creating wpa_supplicant config
wlan0: Creating wpa_supplicant configuration file run/netplan/wpa-wlan0.conf
Creating wpa_supplicant unit /run/systemd/system/netplan-wpa-wlan0.service
Creating wpa_supplicant service enablement link
/run/systemd/system/systemd-networkd.service.wants/netplan-wpa-wlan0.service
openvswitch: definition wlan0 is not for us (backend 1)
NetworkManager: definition wlan0 is not for us (backend 1)
괜찮아 보이는 wpa_supplicant 파일을 살펴봤습니다. SSID와 비밀번호가 정확합니다.
$ sudo cat /run/netplan/wpa-wlan0.conf
ctrl_interface=/run/wpa_supplicant
network={
ssid="MySSID"
key_mgmt=WPA-PSK
psk="MyPWD"
}
나는 네트워크로 연결된 저널ctl 항목에서 eth0이 IP를 얻는 반면 wlan0은 IP를 얻지 못한다고 말하는 것을 확인했습니다. 왜 그렇지 않은지 모르겠습니다.
$ sudo journalctl -b -u systemd-networkd
16:27:47 rpi4 systemd-networkd[775]: wlan0: Link DOWN
16:27:48 rpi4 systemd-networkd[775]: eth0: Re-configuring with /run/systemd/network/10-netplan-eth0.network
16:27:48 rpi4 systemd-networkd[775]: eth0: Failed to send DHCP RELEASE, ignoring: Stale file handle
16:27:48 rpi4 systemd-networkd[775]: eth0: DHCP lease lost
16:27:48 rpi4 systemd-networkd[775]: eth0: DHCPv6 lease lost
16:27:48 rpi4 systemd-networkd[775]: eth0: DHCPv4 address 192.168.nn.nn/24 via 192.168.nn.mm
16:27:48 rpi4 systemd-networkd[775]: wlan0: Re-configuring with /run/systemd/network/10-netplan-wlan0.network
16:27:48 rpi4 systemd-networkd[775]: wlan0: DHCPv6 lease lost
16:27:48 rpi4 systemd-networkd[775]: wlan0: Link UP
10-netplan-eth0.network 및 10-netplan-wlan0.network 파일은 모두 Name= 및 RouteMetric을 제외하고 동일해 보입니다.
$ sudo iw wlan0 info
Interface wlan0
ifindex 3
wdev 0x1
addr dc:a6:32:85:nn:mm
type managed
wiphy 0
channel 116 (5580 MHz), width: 20 MHz, center1: 5580 MHz
txpower 31.00 dBm
$ sudo iwconfig wlan0
wlan0 IEEE 802.11 ESSID:off/any
Mode:Managed Access Point: Not-Associated Tx-Power=31 dBm
Retry short limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Management:on
Wi-Fi용 줄은 있고 이더넷용 줄은 없는 NetPlan yaml 파일을 사용해 보았습니다. eth0은 여전히 잘 작동하지만 wlan0에는 여전히 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: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether dc:a6:32:nn:nn:nn brd ff:ff:ff:ff:ff:ff
inet 192.168.nn.nn/24 metric 100 brd 192.168.nn.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::dea6:xxxx:xxx:xxxx/64 scope link
valid_lft forever preferred_lft forever
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether dc:a6:32:nn:nn:mm brd ff:ff:ff:ff:ff:ff
나는 다음을 사용하여 다른 권장 사항을 시도했습니다.
network:
version: 2
renderer: networkd
eth0은 DHCP IP로 활성화되지만 wlan0에는 IP가 할당되지 않습니다.
현재로서는 시도해 볼 수 있는 옵션이 없으므로 데스크톱에서 작동하는 Wi-Fi를 서버에서도 작동하도록 도와주시면 감사하겠습니다.