2017-05-10 6 views
0

HOP BY OPTION 확장 헤더를 Linux 커널의 IPv6 프레임에 삽입하는 방법.Linux Kernal 핵심 구현

mangle chain 및 Output hook을 사용하여 Netfilter 프레임 워크를 사용하여 IPtables를 구현하는 것이 더 나은 옵션이거나 Linux 커널에 패치로 포함시키는 코드를 작성해야합니다.

저는 리눅스에서이 옵션의 구현을 찾으려고 노력하고 있습니다. 전송 및 네트워크 레이어에 관한 코드를 순회하면서 찾을 수 없었습니다.

Generated packets

IPV6 frame

친절하게 나에게이 구현하는 더 좋은 방법을 제안한다.

+0

이 질문에 대한 코드를 추가 할 수 있다면 유용 할 것입니다. –

답변

0

코드를 한눈에 볼 때 setsockopt()를 사용하여 hop-to-hop 옵션을 설정할 수 있어야합니다.

정확히 어떻게해야할지 고민하지는 않았지만 net/ipv6/ipv6_sockglue.c는 do_ipv6_setsockopt()에서 IPV6_HOPOPT를 처리합니다.

그렇게하려면 루트가되어야합니다 (또는 적어도 CAP_NET_RAW가 있어야합니다).