기존에 PC와 wiz100sr 로 UDP multicast 과 TCPIP 통신하던걸 W5500 chip을 이용해서 사용하려합니다.
PC에서 Dst(MAC) :01:00:5e:7f:ff:ff, Dst(IP) : 224.255.255.255 로 뿌리면 wiz100sr 모듈이 UDP multicast 통신하여 네트워크 설정값을 받아오도록 되어있는데,
현재 W5500 포팅된 보드에서는 네트워크 설정이 MAC : 01:00:5e:1:1:1, IP : 244.255.255.255 여야만 데이터를 받을 수 있습니다. (MAC address 앞 두자리 01:00 만 건드리지 않으면 다른 값이 와도 데이터가 들어오지만 IP를 바꾸면 데이터가 들어오지 않습니다)
-
제가 알고있기로는 UDP는 MAC address로 통신하기 때문에 Mac address를 multicast address 01:00:5e 만 설정해주면 통신이 가능해야하지 않나요?
-
multicast setting으로 소캣을 열었을 때 sendto 가 오류는 안나는데 데이터가 보내지지 않습니다. (multicast 설정 안하면 잘됨)
아래는 제가 세팅한 소캣 옵션입니다. -
추측이지만 현재 broadcast 가 block 된 상태라 Dst IP 일때만 받고 broadcast는 무시하는거 같은데. Mode register MR 0x82 면 block들이 disable 된 상태인데 …왜 broadcast가 안들어오는지 모르겠습니다.
-
Sn_MR_ ND/MC/MMB
Multicast
0 : using IGMP version 2
1 : using IGMP version 1
이 Bit 는 MULTI Bit 가 enable 상태이고 UDP 모드일 때 유효함 (P3-P0:
‘0010’) 추가적으로 multicast 는 IGMP message 에 Join/Leave/Report 와
같은 version number 를 Multicast group 으로 보낸다.
를 0과 1 둘다 해봤지만 … IP를 바꾸면 데이타가 들어오지 않습니다.
UDP DBUG :
DH Address : [ 00 : 00 : 00 : 00 : 00 : 00 ]
PORT : 1460
MR : 0x82
CR : 0x0
IR : 0x0
IMR : 0x1F
SR : 34
DIPR : [ 0 0 0 0 ]
DPORT : 0
FLAG : 0x4000