트래픽 제어를 위한 ACLs(Access Control Lists)
네트워크 장비를 기준으로
1. 네트워크 장비를 통과하는 트래픽
2. 네트워크 장비가 Source/Destination이 되는 트래픽(telnet, ssh)
-> ACLs에서 주가 되는 트래픽은 1번
주소의 범위를 표현하는 용도로 사용되기 때문에 이 주소를 가지고 다른 기술들과 함께 사용할 수 있다.
IP 정보를 기준으로 하는데, Source 주소만을 보고 결정한다.
access-list [ACL의 숫자 번호 부여] [허용/차단] condition[protocol: ip] access-group [번호] [in/out]실습0
조건 - 192.168.1.0/24와 192.168.2.0/24는 서로 접근 허용 - Internet 망에서 내부망에 접근 불허 - Standard ACL 적용! Src IP가 192.168.1.0/24 에서부터 출발하는 데이터를 1번으로 줬고 허용하겠다 R1(config)#access-list 1 permit 192.168.1.0 0.0.0.255 ! Src IP가 192.168.2.0/24 에서부터 출발하는 데이터를 1번으로 줬고 허용하겠다 R1(config)#access-list 1 permit 192.168.2.0 0.0.0.255 ! 각 인터페이스에 적용하기 위해 설정 R1(config)#int e0/0 ! 이더넷 0/0 으로 나가는 것을 허용하겠다. R1(config-if)#ip access-group 1 out R1(config-if)#int e0/1 ! 이더넷 0/1로 나가는 것을 허용하겠다. R2(config-if)#ip access-group 1 out
- 192.168.1.0 - 255.255.255.0 => 0.0.0.255
Inverse mask == Wildcard mask- Wildcard mask의 bit 1은 Don't care
0.0.0.255라면 host (0~255)에 어떤 IP가 와도 신경쓰지 않겠다는 의미- Wildcard mask의 bit 0은 반드시 일치해야 한다.
실습1
- 192.168.2.80/24에서 192.168.1.0/24에 접근 불허 - 나머지 다 허용 - Standard ACL을 적용
- 엔드포인트 IP 설정
- R1 초기 설정
R1>en R1#conf t R1(config)#int f0/0 R1(config-if)#ip addr 192.168.1.1 255.255.255.0 R1(config-if)#int f0/1 R1(config-if)#ip addr 192.168.2.1 255.255.255.0 R1(config)#int e1/0 R1(config-if)#ip addr 192.168.12.1 255.255.255.0 R1(config-if)#no sh R1#sh ip int brie Interface IP-Address OK? Method Status Protocol FastEthernet0/0 192.168.1.1 YES manual up up FastEthernet0/1 192.168.2.1 YES manual up up Ethernet1/0 192.168.12.1 YES manual up up
- R2 초기 설정
R2(config)#hostname Internet Internet(config)#int f0/0 Internet(config-if)#ip addr 192.168.12.2 255.255.255.0 Internet(config-if)#no shut Internet(config-if)#exit Internet(config)#ip route 0.0.0.0 0.0.0.0 192.168.12.1
- ACL 설정
! R1 ! 스탠다드인 경우 0.0.0.0 안 넣어도 됨 R1(config)#access-list 1 deny 192.168.2.80 R1(config)#do sh acce.ss-list Standard IP access list 1 10 deny host 192.168.2.80 R1(config-if)#int f0/0 R1(config-if)#ip access-group 1 out ! C, D에서 A로 ping 해보자 ! 암묵적 deny 규칙이 있기 때문에 permit을 명시해줘야 한다 R1(config)#access-list 1 permit 0.0.0.0 255.255.255.255 R1(config)#do sh access-list Standard IP access list 1 10 deny host 192.168.2.80 (4 match(es)) 20 permit any ! C와 D에서 다시 A로 ping해보자