내 PC에서 다음 패킷을 보낼 때 색조의 응답을 얻고 있습니다.openWRT 라우터에서 필립스 색조의 upnp 검색
sprintf(wrbuf,"%s","M-SEARCH* HTTP/1.0\r\n HOST: 239.255.255.250:1900\r\n MAN: \"ssdp:discover\"\r\n MX: 4\r\n ST: libhue:idl\r\n\r\n");
sendto(sd,&wrbuf,sizeof(wrbuf),0,(struct sockaddr *)&serv,(socklen_t)len);
응답은 다음과 같습니다.
recived: HTTP/1.1 200 OK
CACHE-CONTROL: max-age=100
EXT:
LOCATION: "ipofhue:80/description.xml"
SERVER: FreeRTOS/6.0.5, UPnP/1.0, IpBridge/0.1
ST: upnp:rootdevice
USN: uuid:2f402f80-da50-11e1-9b23-0017880a6643::upnp:rootdevice
내 openWRT 라우터에서 동일한 패킷을 보내면 색조의 응답이 없습니다.
내 PC IP는 10.10.10.130이며 색조 IP는 10.10.10.109 &입니다. 라우터 br-lan IP는 10.10.10.254입니다. 라우터에서 응답을 시작하면 라우터에서 miniupnpd를 실행해야한다고 생각하지 않습니다. 색상 상자에서 실행중인 upnp 서버의 응답이 필요합니다.
openwrt 툴 체인 donot은 M-SEARCH 패킷이 wan 포트에 도달하도록 허용하지 않습니다. 그냥 패킷을 무시하십시오. 커널 로그에 표시됩니다. IGMP 메시지는 나 자신으로부터 온 것입니다. 묵살. Feb 4 06:18:55 user.info sysinit : 그룹 239.255.255.250의 소스 주소 172.22.xx.xx가 업스트림 VIF의 유효한 네트워크에 없습니다. -
장치가 실제로 패킷을 보내나요? 전송 된 패킷이 없으면 색조가 응답하지 않는다는 것은 논리적이며, 지금 보게되는 동작을 얻게됩니다. – MSalters
예 장치가 실제로 패킷을 보내고 있습니다. sendto가 성공을 반환합니다. @ MSalters –
네트워크에서 확인 했습니까? 일이 정상적으로 행동하지 않으면 평상시보다 의심이 커야합니다. 또한 네트워크상의 패킷이 OpenWRT에 의해 전송 될 때 어떤 식 으로든 다르게 보입니까? – MSalters