wsl2 ubuntu 18 에서는 문제 없이 사용하였으나 wsl2 ubuntu 22 및 20 에서 발생하는 문제 입니다.
wsl2 는 부팅(?) 시 ip 가 임의로 변경이 되어서 하기 명령으로 가상 ethernet 을 추가하여 고정된 ip 로 samba 를 사용 하였습니다.
wsl -d Ubuntu-18.04 -u root ip addr add 192.168.254.16/24 broadcast 192.168.50.255 dev eth0 label eth0:1
위 명령을 windows 에서 실행하면 wsl 에 하기와 같이 eth0:1 란 이름의 ethernet device 가 생성 됩니다.
$ ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.22.141.63 netmask 255.255.240.0 broadcast 172.22.143.255
inet6 fe80::215:5dff:fe4e:5643 prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:4e:56:43 txqueuelen 1000 (Ethernet)
RX packets 176939 bytes 571341969 (571.3 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 169426 bytes 6666555382 (6.6 GB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.254.16 netmask 255.255.255.0 broadcast 192.168.50.255
ether 00:15:5d:4e:56:43 txqueuelen 1000 (Ethernet)
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 484 bytes 72563 (72.5 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 484 bytes 72563 (72.5 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
ubuntu 18 에서는 windows 에서 192.168.254.16 ip 로 ssh 연결이 잘되고 samba 도 연결이 잘됩니다.
ubuntu 20, 22 에서는 해당 ip 로 ssh 연결은 잘되지만 samba 연결시 아래와 같은 에러가 발생 합니다.

samba configuration 은 ubuntu 18.04 와 동일합니다.
device eth0:1 의 ip 192.368.254.16 에 대한 samba 연결 시도는 에러가 발생하지만 device eth0 의 ip 172.22.141.63 은 또 samba 연결이 잘되는 군요???
ubuntu version 에 따른 문제 인건지 samba version 에 따른 문제인건지 영문을 모르겠네요.
명령어를 통해서 이더넷 어댑터를 추가로 생성하고
기존 172.22 네트워크 가 아닌 192.168.254 네트워크에 붙이는 이유는 무엇인가요?
그리고 혹시 저 wsl 명령어를 사용하게 되면 새로운 인스턴스를 생성하는 건가요?
저는 회사 정책상 윈도우 pc만 지급되어서 wsl을 설치해 사용하고 있는데
wsl 내 기본 이더넷 어댑터에 추가로 발급 받은 IP를 고정으로 할당하고
도커 위에 젠킨스 등 웹 서버는 문제 없이 돌리고 있습니다.
삼바는 안 해봤는데 다음주에 출근하면 한 번 확인해 보겠습니다.
그리고 172.22 대역 IP가 할당된 eth0에서는 samba가 잘 된다고 하셨는데
아마 wsl이 돌고 있는 윈도우 내부에서 wsl로 접속을 시도하시고 잘 되신 거 같고
이 걸 보면 ubuntu 버전이나 samba 버전이 문제가 되는 것 같지는 않아 보이는데
혹시 eth0:1에 할당된 IP로의 접속은 동일하게 wsl이 돌아가고 있는 윈도우 내부에서 접속 시도하신 걸까요?
저도 생각해보면 처음부터 wsl에 고정 아이피 할당하고 부팅 될 때 자동으로 실행되고
윈도우 외부에서 접속 가능했던 건 아닌 거 같아요.
블로그도 여럿 참조하고 삽질도 오지게 하고 우여곡절 끝에 지금은 너무 만족스럽게 잘 쓰고 있어요.
일단, nginx나 apache 하나 0.0.0.0:8080으로 올리셔서 eth0:1에서 ping은 잘 가는지, 접속은 잘 되는지
확인하시는 게 우선일 것 같습니다.
새로 추가한 192.168.254.x ip 는 고정이 되기 때문에 samba 연결과 ssh 연결을 배치 파일로 한번에 쉽게 할수 있죠.
댓글 달아 주신분이 어떤 방법으로 wsl 의 ip 를 고정 하신것인지 궁금하네요.
wsl ubuntu 18 에서는 192.168.254.x 에서 samba 연결이 잘 됩니다.
ubuntu 20 에서 samba 연결이 안되는 상황이고 더욱 이상한것은 172.22.x.x 는 samba 연결이 되고,
ssh 는 192.168.254.x 와 172.22.x.x 둘다 잘되고 해서 ubuntu 20 에서 samba 관련된 무엇인가 변경되어 추가 설정을 해야 하는건지 하는 의문 입니다.
wsl 의 ip 를 고정 할수 있다면 192.168.254.x 를 추가 할 필요도 없으니 근본적으로 문제가 해결 되겠죠.