18.12.10. 지원되는 프로토콜
다음 섹션에서는 네트워크 필터링 하위 시스템에서 지원하는 프로토콜에 대한 세부 정보를 나열하고 제공합니다. 이러한 트래픽 유형은 규칙 노드에 중첩된 노드로 제공됩니다. 규칙에서 필터링하는 트래픽 유형에 따라 속성은 다릅니다. 위의 예제에서는 ip 트래픽 필터링 노드 내부에서 유효한 단일 특성
srcipaddr
을 표시했습니다. 다음 섹션에서는 어떤 속성이 유효한지와 예상되는 데이터 유형을 보여줍니다. 다음 데이터 유형을 사용할 수 있습니다.
- UINT8 : 8 비트 정수; 0-255 범위
- UINT16: 16비트 정수, 범위 0-65535
- MAC_ADDR: 00:11:22:33:44:55와 같이 점으로 10진수 형식의 MAC 주소
- MAC_MASK: FF:FF:FC:00과 같은 MAC 주소 형식의 MAC 주소 마스크
- IP_ADDR: 10.1.2.3과 같은 점으로 10.1.2.3 형식의 IP 주소
- IP_MASK: 점으로 지정된 10진수 형식(255.255.248.0) 또는 CIDR 마스크(0-32)의 IP 주소 마스크
- IPV6_ADDR: FFFF::1과 같은 번호 형식으로 IPv6 주소
- IPV6_MASK: IPv6 mask in numbers format (FFFF:FFFF:FC00::) 또는 CIDR 마스크(0-128)
- 문자열: 문자열
- BOOLEAN: 'true', 'yes', '1' 또는 'false', 'no', '0'
- IPSETFLAGS: 최대 6개의 'src' 또는 'dst' 요소에서 패킷 헤더의 소스 또는 대상 부분(예: src,src,dst)에서 기능을 선택하는 ipset의 소스 및 대상 플래그입니다. 여기에서 제공할 'selectors' 수는 참조되는 ipset 유형에 따라 다릅니다.
IP_MASK
또는 IPV6_MASK
유형의 속성을 제외한 모든 속성은 값이 없는 match 속성을 사용하여 부정할 수 있습니다. 여러 개의 부정 특성을 함께 그룹화할 수 있습니다. 다음 XML 조각은 추상 특성을 사용하는 이러한 예를 보여줍니다.
[...] <rule action='drop' direction='in'> <protocol match='no' attribute1='value1' attribute2='value2'/> <protocol attribute3='value3'/> </rule> [...]
규칙은 규칙과 지정된 프로토콜 속성의 경계 내에서 논리적으로 살펴봅니다. 따라서 단일 속성의 값이 규칙에서 지정된 값과 일치하지 않으면 평가 프로세스 중에 전체 규칙이 건너뜁니다. 따라서 위 예제에서 들어오는 트래픽은
value 1
과 protocol property attribute
2
가 value2
와 일치하지 않고 protocol 속성 속성3이 value 3
과 일치하는 경우에만 삭제됩니다.
18.12.10.1. MAC (Ethernet)
프로토콜 ID: mac
이 유형의 규칙은 루트 체인으로 이동해야합니다.
속성 이름 | datatype | 정의 |
---|---|---|
srcmacaddr | MAC_ADDR | 보낸 사람의 MAC 주소 |
srcmacmask | MAC_MASK | 보낸 사람의 MAC 주소에 적용되는 마스크 |
dstmacaddr | MAC_ADDR | 대상의 MAC 주소 |
dstmacmask | MAC_MASK | 대상의 MAC 주소에 적용되는 마스크 |
protocolid | UINT16 (0x600-0xffff), STRING | 계층 3 프로토콜 ID입니다. 유효한 문자열에는 [arp, rarp, ipv4, ipv6] |
주석 | 문자열 | 256자까지 텍스트 문자열 |
필터는 다음과 같이 작성할 수 있습니다.
[...] <mac match='no' srcmacaddr='$MAC'/> [...]