여러 UDP 포트에서 수신 대기하고 수신 된 데이터 그램을 이더넷 프레임으로 처리해야합니다. 이더넷 프레임을 수신하기 위해 SOCK_RAW 소켓을 작성하는 것 외에 다른 솔루션을 생각할 수 없습니다.받은 데이터가 UDP 데이터 그램인지 확인한 다음 데이터 그램을 추출하여 UDP 포트를 식별하십시오.UDP 포트에서 이더넷 프레임 수신
더 좋은 방법이 있습니까? 특정 포트에서 UDP 데이터 그램을 수신하고 전체 이더넷 프레임에 계속 액세스 할 수있는 일종의 소켓이 있습니까?
이것은 당신이 찾고있는 대답이다. NIC는 모든 헤더 정보를 처리 한 다음 패킷을 커널에 전달하기 때문에 (즉, 커널이 생각하지 않는 헤더를 보지 못함) 장치 드라이버를 작성하지 않고 프레임에 액세스 할 수 없습니다. 그러나 UDP 패킷을 얻으려면 실제로 헤더를 필요로하지 않습니다. UDP 패킷에 포트가 있기 때문에 실제로 포트가 어떤 패킷을 보내야하는지 구분하기 때문입니다. – Magn3s1um