Windows에서 WSL/Linux로 프로세스를 포팅하려고 합니다. 이전에는 두 Windows 프로세스가 SSDP 검색에 성공한 후 TCP 연결을 통해 통신하고 있었습니다. 이제 Windows에서 Linux(WSL)로 유사한 통신이 작동하기를 원합니다. Windows<->Windows의 경우 localhost/127.0.0.1을 사용했지만 SSDP 검색은 Windows<->WSL용 WSL의 인스턴스 IP에서만 작동하는 것 같습니다.
ifconfigWSL에서는 다음을 제공합니다.
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.26.253.18 netmask 255.255.240.0 broadcast 172.26.255.255
inet6 fe80::215:5dff:fed7:82b prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:d7:08:2b txqueuelen 1000 (Ethernet)
RX packets 422 bytes 72257 (72.2 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 299 bytes 27676 (27.6 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
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 378 bytes 19949 (19.9 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 378 bytes 19949 (19.9 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
SSDP 검색은 Windows 및 기타 WSL에서 프로세스를 실행할 때 172.26.253.18에서 작동합니다.
내가 생각할 수 있는 가능한 이유는 WSL 내에서 127.0.0.1을 사용할 때 WSL 환경 자체의 루프백 인터페이스를 의미한다는 것입니다. 127.0.0.1로 전송된 SSDP 패킷은 WSL 환경 내에 유지되며 호스트 Windows 환경이나 로컬 네트워크의 다른 장치에 표시되지 않습니다.