iptables -p tcp/udp 이외의 프로토콜 사용

iptables -p tcp/udp 이외의 프로토콜 사용

제가 이해한 바에 따르면 iptables는 전송 계층(계층 4)에서 작동하며 발생하는 모든 패킷 필터링은 tcp 및 udp와 같은 계층 4의 IP 프로토콜을 기반으로 합니다. 따라서 esp, gre 및 l2tp와 같은 프로토콜을 입력하면iptables -p옵션, 그게 말이 되나요? iptables를 사용하여 레이어 2/3 프로토콜을 기반으로 패킷을 필터링할 수 있습니까? 그렇지 않은 경우 iptables는 icmp 프로토콜을 기반으로 패킷을 어떻게 필터링합니까?

iptables를 처음 접했고 아직 배우는 중입니다. 감사해요!

답변1

iptables데이터링크, 네트워크 및 전송 계층에서 필터링을 지원합니다.

(프로토콜) 옵션 -p은 특별히 계층 4 프로토콜로 제한되지 않습니다. 그만큼매뉴얼 페이지icmp와 esp를 구체적으로 언급합니다. 나는 gre도 지원된다는 것을 알고 있습니다('gre' 또는 프로토콜 '47'). 지정된 프로토콜은 이름이나 에 지정된 정수로 이 옵션에 전달될 수 있습니다 /etc/protocols. 이 목록의 모든 프로토콜이 iptables에서 지원되는지는 확실하지 않습니다.

-p 또는 --protocol이 지정되고 알 수 없는 옵션이 발견되는 경우에만 iptables는 옵션을 사용 가능하게 만들기 위해 프로토콜과 동일한 이름의 일치 모듈을 로드하려고 시도합니다.

이 '일치 모듈' 구문은 확장된 패킷 일치 모듈이며 옵션을 사용하여 지정됩니다 -m --match.

지원되는 확장 프로그램 목록은 여기에서 확인할 수 있습니다.iptables 확장. 사용 가능한 netfilter 커널 모듈 목록은 에 있습니다 /lib/modules/$(uname -r)/kernel/net/netfilter.

관련 정보