ESP32-S3에서 리눅스를 구동할 때 와이파이 연결하는 방법인데 내가 리눅스에서 네트워크 관련 도구들을 잘 몰라서 방법에 일관성이 없거나 이거보다 더 좋은 방법이 있을 수가 있음. 굳이 ESP32가 아니더라도 Buildroot에 공통적으로 적용할 수 있을 것이다.
ESP32에다가 리눅스를 설치하는게 뭔지 궁금하다면
https://gojimmypi.github.io/ESP32-S3-Linux/
http://wiki.osll.ru/doku.php/etc:users:jcmvbkbc:linux-xtensa:esp32s3 그런데 글쓰는 시점에서 두번째 사이트 접속이 안된다!
네트워크 장치 이름 확인
iw dev뭐 대충 espsta0이라고 나올 것이다.
ip link set espsta0 up와이파이 스캔
iw espsta0 scan와이파이를 찾을수 있는지 확인한다.
그런데 wpa_passphrase로 설정파일을 만들어야 하는데 그게 없어서 다른 컴퓨터에서 만들어줘야 한다. 아무튼 SSID가 hnw이고 비밀번호가 12345678이라고 치면
wpa_passphrase hnw 12345678이런 출력이 나온다.
network={
ssid="hnw"
#psk="12345678"
psk=2c6a23e0b6e2ea776704c36988b6b2a1cca55a8f46ab6f40515100403e03df5a
}적당한 방법으로 저 내용을 복사해서 적당한 방법으로 텍스트 파일을 만들자. 나는 그냥 vi를 사용했다. 그런데 /etc 디렉토리를 제외하면 읽기 전용이라 /etc에 파일을 넣었다.
vi /etc/wconf여기에 있는 vi는 ESC키로 입력 모드를 나가는게 안되는거 같아서 Ctrl+[로 나가야 했다.
생성된 설정 파일로 연결을 시도한다.
wpa_supplicant -B -i espsta0 -c /etc/wconf 다시 iw dev해서 ssid에 와이파이 이름이 나오면 연결이 된 것이다.
DHCP를 쓸 수 있는지 모르겠어서 IP를 수동으로 할당해야 한다.
ifconfig espsta0 IP주소 netmask 서브넷 마스크서브넷 마스크는 보통 255.255.255.0이긴 할거고 ip주소는 사용할 수 있는 범위 내에서 할당되지 않은 값을 넣으면 된다. 잘 모르겠다면 스마트폰의 설정을 뒤지다 보면 후술할 게이트웨이정보를 포함한 내용을 볼 수 있을 것이다.

게이트웨이 추가
route add default gw 게이트웨이의IProute 명령어로 게이트웨이가 제대로 추가되었는지 확인한다.
routeping로 인터넷 접속이 되는지 확인한다. DNS는 게이트웨이 추가할 때 자동으로 되는 것으로 추정.
ping google.com참고한 글 https://hiseon.me/linux/command/linux-wifi-command-line/
이메일로 답장