1. Berkely Packet Filter (B P F)
ㅇ BPF 구문
- BPF 구문은, 필터 지정을 하는 표현식(expression)의 형식을 말함
- 각 표현식은, 1 이상의 프리미티브(primitive) 및 연산자로 구성됨
- 프리미티브는, 1 이상의 한정자(modifier)와 이에 부가되는 이름 또는 숫자로 구성됨
- 연산자는, AND(&&), OR(||), NOT(!)
ㅇ 한정자 (modifier)
- 프로토콜 (ether, arp, ip, ip6, tcp, udp, http, ftp 등)
- 방향 (src, dst)
- 유형 (host, port, net, portrange)
. host : 호스트 이름 또는 IP 주소, port : 포트 번호,
. net : 네트워크 이름 또는 192.168.0.0/16
ㅇ 例) dst host 192.168.0.1 && tcp port 80
- 프리미티브 2개 : (dst host 192.168.0.1), (tcp port 80)
. 한정자 4개 : dst, host, tcp, port
. 이름 또는 숫자 2개 : 192.169.0.1, 80
- 연산자 1개 : &&
- 목적지 호스트가 192.168.0.1 이고, TCP 포트번호 80인 것 만
ㅇ 例) src host 192.168.0.1 || port 80
- 발신자 호스트 IP주소가 192.168.0.1 이거나,
발신지 또는 수신지 포트가 80 인 것 만