UDP를 기반으로 리눅스 커널에 프로토콜을 구현 중이며 패킷을 받으면 커널 내에서 응답을 보내려고합니다. 이를 위해 ip4_datagram_connect
을 실행하여 대상 (수신 된 패킷의 원본 주소)에 대한 경로를 얻은 다음 회신을 보내려고합니다.ip 헤더에서 struct sockaddr_in을 채우십시오. __be32 saddr 및 udp header __be16 source
ip4_datagram_connect
으로 전화하려면 함수에 주소로 전달하기 위해 sockaddr_in 구조체를 채워야합니다.
구조체를 sockaddr_in, 비교에
unsigned short sin_port;
struct in_addr sin_addr;
구조체
__be16 source;
및
iphdr 구조체 udphdr
내 질문에, 주소 및 포트 (소켓 프로그래밍에서 htons 등 사용하는 방법을 sockaddr_in 구조로 패킷 헤더에서 복사하려면 도우미 함수가 필요합니까?)?
감사합니다. 시도해보고 여기를보고 싶습니다. –
예상대로 작동 했습니까? –