와일드카드 마스크(Wildcard Mask)는 컴퓨터 네트워킹, 특히 IP 주소 체계에서 비트 단위의 마스크를 의미하는 용어이다. 주로 Cisco Systems의 네트워크 장비에서 ACL(Access Control List, 접근 제어 목록)을 설정하거나 OSPF(Open Shortest Path First)와 같은 라우팅 프로토콜의 네트워크 광고 범위를 지정할 때 사용된다.
와일드카드 마스크는 32비트 길이의 이진수로 표현되며, 각 비트의 값은 다음과 같은 의미를 가진다.
- 0: 해당 비트 위치의 IP 주소 값이 정확하게 일치해야 한다. 즉, 일치 여부를 검사한다.
- 1: 해당 비트 위치의 IP 주소 값은 어떠한 값이든 허용된다. 즉, 일치 여부를 검사하지 않는다.
이는 서브넷 마스크(Subnet Mask)와 비트가 반전된 관계에 있다. 서브넷 마스크에서 1은 네트워크 부분(일치 필수), 0은 호스트 부분(일치 불필요)을 의미하는 반면, 와일드카드 마스크에서는 0이 일치 필수, 1이 일치 불필요를 나타낸다. 따라서 와일드카드 마스크는 서브넷 마스크의 비트 단위 NOT 연산 결과와 동일하다.
표현 예시
- 0.0.0.255: IP 주소의 앞 24비트(세 옥텟)는 일치해야 하고, 마지막 8비트(한 옥텟)는 모든 값을 허용한다. 예를 들어
192.168.30.0 0.0.0.255는192.168.30.0부터192.168.30.255까지의 IP 주소 범위를 의미한다. 이는 서브넷 마스크255.255.255.0(CIDR 표기/24)과 등가적이다. - 0.0.0.0: 모든 32비트가 일치해야 하므로, 단일 IP 주소 하나만을 대상으로 지정한다. 예를 들어
192.168.0.1 0.0.0.0은 오직192.168.0.1하나만 의미한다. Cisco 장비에서는host키워드로 대체할 수 있다. - 255.255.255.255: 모든 비트를 검사하지 않으므로, 모든 IP 주소를 대상으로 한다.
any키워드로 대체할 수 있다.
활용 분야
와일드카드 마스크는 주로 다음과 같은 네트워크 구성에서 사용된다.
-
ACL(Access Control List): 라우터나 방화벽에서 특정 IP 주소 또는 IP 주소 범위의 트래픽을 허용(permit)하거나 차단(deny)하는 규칙을 정의할 때 사용된다. 예를 들어,
access-list 100 permit ip 192.168.1.0 0.0.0.255 any는192.168.1.0/24네트워크에서 출발하는 모든 IP 트래픽을 허용한다. -
OSPF(Open Shortest Path First): OSPF 라우팅 프로토콜에서 네트워크를 광고할 때
network명령어와 함께 와일드카드 마스크를 사용하여 특정 인터페이스가 OSPF 프로세스에 포함될 범위를 지정한다. -
EIGRP(Enhanced Interior Gateway Routing Protocol): Cisco 독점 라우팅 프로토콜인 EIGRP에서도 네트워크 광고 범위를 지정할 때 와일드카드 마스크를 사용한다.
서브넷 마스크와의 관계
와일드카드 마스크는 서브넷 마스크의 비트 반전이므로, CIDR 표기법과의 대응 관계를 쉽게 유도할 수 있다. 예를 들어 서브넷 마스크 255.255.255.0(/24)의 와일드카드 마스크는 0.0.0.255이며, 서브넷 마스크 255.255.0.0(/16)의 와일드카드 마스크는 0.0.255.255이다. 단일 호스트를 지정하는 0.0.0.0은 서브넷 마스크 255.255.255.255(/32)에 대응된다.
와일드카드 마스크는 연속된 1과 0의 패턴을 강제하지 않는다는 점에서 서브넷 마스크와 차이가 있다. 서브넷 마스크는 항상 왼쪽부터 연속된 1비트로 구성되어야 하지만, 와일드카드 마스크는 비연속적인 비트 패턴도 허용한다. 예를 들어 0.0.254.255와 같은 와일드카드 마스크를 사용하면 세 번째 옥텟의 마지막 비트만 검사하여 홀수 번째 서브넷만을 필터링하는 등의 세밀한 제어가 가능하다.