결론부터 말씀드리면, ACL의 0.0.0.0 0 매칭 규칙은 모든 IP 주소를 일치시키지 않으며, 오직 특수 IP 주소인 0.0.0.0만 정확히 일치시킵니다. 전제로 사용되는 0.0.0.0 주소는 상황에 따라 다른 의미를 가집니다.
ACL 3000과 ACL 3001 비교
acl number 3000 <br></br> rule 5 permit source 0.0.0.0 255.255.255.255<br></br>acl number 3001 <br></br> rule 5 permit source 0.0.0.0 0
ACL 3000은 모든 IP 주소를 일치시킵니다.
rule 5 permit source 0.0.0.0 255.255.255.255
rule 5 permit source any
rule 5 permit
이 세 가지 구문은 서로 동일하며, ACL 3001과는 동일하지 않습니다.
실험 검증
실험 토폴로지
실험 절차
1단계: eNSP 왼쪽 도구망 네트워크 장비 영역에서 필요한 장비를 작업 영역으로 드래그하고 포트를 연결합니다.
생략됨. ACL 기능을 NAT 기능과 결합하여 검증할 경우, 라우터 RouterX에서 NAT를 구성하며 Router 예약 장비는 사용하지 않는 것이 좋습니다. 해당 장비의 NAT 기능은 존재하지만 호환성 문제가 있습니다.
2단계: 상호 연결 포트 IP 주소 구성
RouterA
dhcp enable
interface GigabitEthernet0/0/0
ip address 200.0.0.1 255.255.255.0
dhcp select interface
RouterB
dhcp enable
interface GigabitEthernet0/0/0
ip address 100.0.0.1 255.255.255.0
dhcp select interface
RouterX
dhcp enable
interface GigabitEthernet0/0/0
ip address dhcp-alloc
interface GigabitEthernet0/0/1
ip address 192.168.1.1 255.255.255.0
dhcp select interface
interface GigabitEthernet0/0/2
ip address dhcp-alloc
PC1
DHCP 방식으로 IP 주소 정보를 획득하고 적용 버튼을 클릭합니다.
3단계: NAT Easy-ip 구성
RouterX
ACL 3001이 ACL 3000과 동등한지 확인하기 위해 NAT와 결합하여 검증합니다.
acl number 3000
rule 5 permit
acl number 3001
rule 5 permit source 0.0.0.0 0
GE0/0/0에는 ACL 3000을 적용하고, GE0/0/2에는 ACL 3001을 적용합니다.
interface GigabitEthernet0/0/0
nat outbound 3000
interface GigabitEthernet0/0/2
nat outbound 3001
4단계: 결과 검증
만약 ACL 3000과 ACL 3001이 동등하다면, RouterX의 GE0/0/0 NAT는 정상적으로 내부 네트워크 주소를 외부 네트워크 주소로 변환하며, GE0/0/2 NAT도 동일하게 작동해야 합니다. PC1과 RouterA는 통신이 가능해야 하며, PC1과 RouterB도 통신이 가능해야 합니다.
만약 ACL 3001이 모든 IP를 일치시킬 수 있다면 NAT가 내부 IP를 공인 IP로 변환하여 PC1과 RouterB 간 통신이 가능해야 합니다. 하지만 결과가 그렇지 않기 때문에 모든 IP를 일치시키지 못하며, 따라서 ACL 3000과 ACL 3001은 동등하지 않습니다.
PC1의 IP 주소가 192.168.1.254일 때, 외부 네트워크의 RouterA IP(200.0.0.1)와 RouterB IP(100.0.0.1)로 PING을 보내어 PC1과 RouterA, PC1과 RouterB 간 통신이 가능한지 확인하여 ACL 3000과 ACL 3001이 동등한지 검증합니다.
PC>ipconfig
Link local IPv6 address...........: fe80::5689:98ff:fe31:6051
IPv6 address......................: :: / 128
IPv6 gateway......................: ::
IPv4 address......................: 192.168.1.254
Subnet mask.......................: 255.255.255.0
Gateway...........................: 192.168.1.1
Physical address..................: 54-89-98-31-60-51
DNS server........................:
PC>ping 100.0.0.1
Ping 100.0.0.1: 32 data bytes, Press Ctrl_C to break
Request timeout!
Request timeout!
Request timeout!
Request timeout!
Request timeout!
--- 100.0.0.1 ping statistics ---
5 packet(s) transmitted
0 packet(s) received
100.00% packet loss
PC>ping 200.0.0.1
Ping 200.0.0.1: 32 data bytes, Press Ctrl_C to break
From 200.0.0.1: bytes=32 seq=1 ttl=254 time=15 ms
From 200.0.0.1: bytes=32 seq=2 ttl=254 time=16 ms
From 200.0.0.1: bytes=32 seq=3 ttl=254 time=31 ms
From 200.0.0.1: bytes=32 seq=4 ttl=254 time=16 ms
From 200.0.0.1: bytes=32 seq=5 ttl=254 time=15 ms
--- 200.0.0.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 15/18/31 ms
Wireshark를 사용하여 RouterA의 GE0/0/0 포트, RouterB의 GE0/0/0 포트, RouterX의 GE0/0/1 포트에서 각각 패킷을 캡처하여 두 위치에서 NAT가 내부 네트워크 주소를 공인 IP로 변환하는지 확인하여 ACL 3000과 ACL 3001이 동등한지 검증합니다.
PING 200.0.0.1이 RouterA
RouterA의 GE0/0/0 포트 데이터에서 내부 IP가 공인 IP로 변환되었으며, 데이터는 도달 가능하며 echo request와 echo reply 모두 존재합니다.
1 0.000000 200.0.0.254 200.0.0.1 ICMP 74 Echo (ping) request id=0x0528, seq=1/256, ttl=127 (reply in 2)
2 0.016000 200.0.0.1 200.0.0.254 ICMP 74 Echo (ping) reply id=0x0528, seq=1/256, ttl=255 (request in 1)
RouterX GE0/0/1 포트 데이터에서 내부 IP가 외부 IP에 성공적으로 접근하는 것을 볼 수 있으며, NAT가 주소 변환을 수행했습니다.
13 284.109000 192.168.1.254 200.0.0.1 ICMP 74 Echo (ping) request id=0xddae, seq=1/256, ttl=128 (reply in 14)
14 284.125000 200.0.0.1 192.168.1.254 ICMP 74 Echo (ping) reply id=0xddae, seq=1/256, ttl=254 (request in 13)
PING 100.0.0.1이 RouterB
RouterB의 GE0/0/0 포트 데이터에서 request 메시지만 존재하며 reply 메시지는 없고, 내부 IP 주소가 변환되지 않았습니다.
4 50.219000 192.168.1.254 100.0.0.1 ICMP 74 Echo (ping) request id=0xf3ad, seq=1/256, ttl=128 (no response found!)
RouterX GE0/0/1 포트 데이터에서 request 메시지만 존재하며 reply 메시지는 없습니다.
59 7416.953000 192.168.1.254 100.0.0.1 ICMP 74 Echo (ping) request id=0xfbad, seq=5/1280, ttl=127 (no response found!)
결과적으로 100.0.0.0/24 네트워크에서 RouterX의 GE0/0/2 포트에 적용된 NAT가 ACL 3001 규칙으로 100.0.0.1에 도달할 수 없으며, ACL 3001 규칙과 ACL 3000은 동등하지 않음을 알 수 있습니다.