netfilter

    0

    1답변

    이 2 예입니다 수정 : How to append data on a packet from kernel space? How to route the splitted packets using netfilter hooks in kernel space 난 그냥 데이터가 후크 LOCAL_IN에서 서버를 오는 변경하려면이 비슷한 spllitted 예입니다. 추가 데이터

    2

    2답변

    Linux 시스템에서 패킷 검사, mangling, dropping 및 injection을해야 할 것입니다. 이상적으로 이것은 사용자 공간과 IP 패킷 및 이더넷 프레임에도 해당됩니다. 유감스럽게도 NFQUEUE과 libnetfilter_queue을 기반으로하는 접근 방식을 근본적으로 배제한 OpenSource는 사용할 수 없습니다. netfilter (및

    2

    1답변

    내 네트워크의 게이트 웨이 (악의적 인 의도 없음)에서 프록시 TCP 연결을위한 간단한 서버를 구축하려고하지만 TCP 핸드 셰이크가 실패했습니다. netfilter를 사용하여 들어오는 TCP 패킷의 IP 및 포트를 변경하여 응용 프로그램으로 전환하고 모든 체크섬을 업데이트하면서 원래의 상태로 다시 변경합니다. 내 서버가 현재 의도 된 호스트에 도착하지만 A

    0

    1답변

    netfilter를 사용하여 TCP 패킷을 조작 중이므로 예상대로 작동하는 TCP 및 IP 체크섬을 다시 계산해야합니다. Wireshark는 체크 아웃이 서버 밖으로 나가는 동안 정확하다고보고합니다 (클라이언트가 생각해야하는 것과 일치 함).하지만 클라이언트에 도달하면 체크섬은 항상 0xAA6A로 바뀝니다. 포스트 라우팅 후크에서 주소/포트를 조작 한 후

    2

    3답변

    libnetfilter_queue를 사용하는 방법을 배우려고합니다. 필자는 라이브러리와 함께 제공되는 예제를 컴파일했습니다. #include <stdio.h> #include <stdlib.h> #include <unistd.h> #include <netinet/in.h> #include <linux/types.h> #include <linux/n

    1

    2답변

    netfilter postrouting 후크에서 IP 및 TCP 헤더의 일부 필드를 변경하려고합니다. 그러나 커널 TCP 체크섬 기능을 제대로 수정하여 나중에 수정할 수없는 것처럼 보입니다. TCP 핸드 셰이크 중에 체크섬이 좋지만 패킷에 페이로드가 있으면 바로 체크섬이 잘못됩니다. 나는이 체크섬 코드를 TCP 소스 주변을 파고 함께 뽑았다. 예상 된 TC

    1

    2답변

    , 나는 많은 코드 샘플 중 하나를 (struct iphdr *)skb_network_header(skb) //skb is an instance of (struct sk_buff*) 나 정말 동일 (호출 skb_network_header 주조)는 함수 ip_hdr()를 사용을 참조하십시오. 이거 안전한가요? sk_buff의 출처에 대한 가정이 없다면 네

    2

    1답변

    배경 : 네트워크 트래픽 처리 커널 모듈을 작성 중입니다. netfilter 후크를 사용하여 패킷을 받고 있습니다. 모든 필터링은 hook 함수 내에서 이루어 지지만 여기서 패킷 처리를하고 싶지는 않습니다. 따라서 솔루션은 작업 표 또는 작업 대기열입니다. 나는 그들 사이의 차이점을 안다, 나는 둘 다 사용할 수 있지만, 나는 약간의 문제가 있으며 조언이

    0

    1답변

    TCP 패킷의 IP 헤더를 수정하고 직접 netfilter NF_INET_LOCAL_OUT 훅으로 보냈습니다. TCP 연결을 성공적으로 설정할 수 있습니다. 불행하게도, PSH 플래그가 설정된 데이터 패킷은 피어에 의해 잘 처리 될 수 없다. 그러나 PSH가있는 데이터 패킷을 기본 Linux 스택을 통과시키고 다른 패킷이 모듈을 통과하게하면 모든 TCP 패

    5

    1답변

    softirq (netfilter 사전 라우팅 후크)와 사용자 컨텍스트 (ioctl 호출 내) 사이에 데이터 구조를 공유하는 커널 모듈을 개발 중입니다. 이 link을 읽은 후 , 나는 내가 데이터를 수정할 때 소프트웨어 (spin_lock_bh 또는 spin_lock_irqsave를 사용하여) 사용자 컨텍스트에서 인터럽트를 비활성화하고 공유 데이터에 대한