본문 바로가기

CCNA 기초

ACL(Access List) - Standard Access List


Access List
- 라우터로 들어오거나 나가는 액세스를 제어하기 위해 사용하는 기술

Access List 기능
- 패킷 필터링
- NAT
- 정책 라우팅

Access List 종류
- Standard Access List
     - 경로 설정시 송신지 어드레스를 검사
- Extended Access List
     - 경로 설정시 송신지 어드레스와 수신지 어드레스 모드 검사
     - 특정 프로토콜, 포트번호, 다른 매개변수 검사

Access List 구현 지침
- 시스코에서 적용된 범위의 ACL 번호만 사용해야함
     - 표준 ACL : 1~99, 1300~1999
     - 확장 ACL : 100~199, 2000~2699
- 프로토콜, 방향, 인터페이스당 1개의 ACL만 적용가능
- 하향식(top-down) 처리
     - 발생빈도 높은 조건 우선
     - 추가사항은 맨뒤에 추가됨
           - Numbered ACL 은 ACL 문장 선별적 추가 삭제 불가
           - Named ACL 은 ACL 문장 선별적 추가 삭제 가능
- 제일 마지막에는 묵시적 deny all (= default)

TCP/IP Access List
- 특정 패킷과 ACL 정의 내용 비교
     - Access-List의 Address wildcard masking 사용
     - 와일드 카드 마스킹은 숫자 1과 0을 사용하여 비교
           - 0은 대응 비트를 검사하라는 의미
           - 1은 대응 비트를 무시하라는 의미
 
Standard ACL 설정
#access-list    access-list number    {permit/deny}        source-address    [wildcard mask]
                      1-99,1300-1999    트레픽 허용/차단    송신지 IP주소      default 0.0.0.0 (하나만 허용) // 0.0.0.255 (모두 허용)
#interface serial 0
#ip access-group access-list-number                           {in/out}
                        해당 인터페이스에 적용될  ACL번호    들어오는 필터로 적용될지 나가는 필터로 적용된지 지정 default=out

-----------------------------------------------------------------------------------------------------

표준 ACL설정

표준 Access list를 적용하여 192.168.4.1과 192.168.3.1만 통신하고 192.168.2.1은 통신이 안되게 하시오.




Router 0 기본 설정

Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#int fa 0/0
Router(config-if)#ip add 192.168.4.1 255.255.255.0
Router(config-if)#no sh
%LINK-5-CHANGED: Interface FastEthernet0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0, changed state to up
Router(config-if)#exit
Router(config)#int fa 0/1
Router(config-if)#ip add 192.168.2.1 255.255.255.0
Router(config-if)#no sh
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
Router(config-if)#exit
Router(config)#do show ip int brief
Interface                IP-Address      OK? Method Status                       Protocol
FastEthernet0/0      192.168.4.1    YES manual up                            up
FastEthernet0/1      192.168.2.1    YES manual up                            up
Ethernet0/0/0         unassigned     YES manual administratively down down
Vlan1                    unassigned      YES manual administratively down down
Router(config)#int ethernet 0/0/0
Router(config-if)#ip add 192.168.3.1 255.255.255.0
Router(config-if)#no sh
%LINK-5-CHANGED: Interface Ethernet0/0/0, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface Ethernet0/0/0, changed state to up
Router(config-if)#exit
Router(config)#do show ip int brief
Interface                IP-Address      OK? Method Status                       Protocol
FastEthernet0/0      192.168.4.1    YES manual up                            up
FastEthernet0/1      192.168.2.1    YES manual up                            up
Ethernet0/0/0         192.168.3.1    YES manual up                            up
Vlan1                    unassigned      YES manual administratively down down
Router(config)#end
%SYS-5-CONFIG_I: Configured from console by console


- 각 pc의 기본 설정을 끝낸다음 연결이 제대로 되었는지 확인 -
Router#ping 192.168.4.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.4.2, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 31/31/32 ms

Router#ping 192.168.2.1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.2.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 0/10/16 ms

-----------------------------------------------------------------------------------------------------

Standard ACL - permit 설정

Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#access-list ?
  <1-99>      IP standard access list
  <100-199>  IP extended access list
Router(config)#access-list 1 ?
  deny    Specify packets to reject
  permit  Specify packets to forward
  remark  Access list entry comment
Router(config)#access-list 1 permit ?
  A.B.C.D  Address to match
  any        Any source host
  host       A single host address
Router(config)#access-list 1 permit 192.168.3.1 ?
  A.B.C.D  Wildcard bits
  <cr>
Router(config)#access-list 1 permit 192.168.3.1 0.0.0.255
- access-list의 그룹 넘버를 1로 정의하고 192.168.3.1 만 설정한다.
- permit 일 경우 기본값은 deny any이다. 즉, 모든 ip를 차단하고 원하는 ip만 접속을 허락하는 것이다.

Router(config)#int fa 0/0
Router(config-if)#ip access-group 1 out    - access-list 그룹 1만 interface fa 0/0 의 접속(= fa 0/0으로 나가는 것)을 허락한다.
Router(config-if)#exit

Router(config)#do show run
!
interface FastEthernet0/0
 ip address 192.168.4.1 255.255.255.0
 ip access-group 1 out
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 192.168.2.1 255.255.255.0
 duplex auto
 speed auto
!
interface Ethernet0/0/0
 ip address 192.168.3.1 255.255.255.0
 duplex auto
 speed auto
!

!
access-list 1 permit 192.168.3.0 0.0.0.255
!

-----------------------------------------------------------------------------------------------------

- Standard ACL 설정 확인 -
PC1 설정

PC>ping 192.168.4.2
Pinging 192.168.4.2 with 32 bytes of data:

Request timed out.
Request timed out.
Request timed out.
Request timed out.

Ping statistics for 192.168.4.2:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

PC2 설정

PC>ping 192.168.4.2
Pinging 192.168.4.2 with 32 bytes of data:

Reply from 192.168.4.2: bytes=32 time=63ms TTL=127
Reply from 192.168.4.2: bytes=32 time=63ms TTL=127
Reply from 192.168.4.2: bytes=32 time=78ms TTL=127
Reply from 192.168.4.2: bytes=32 time=47ms TTL=127

Ping statistics for 192.168.4.2:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 47ms, Maximum = 78ms, Average = 62ms

-----------------------------------------------------------------------------------------------------

Standard ACL 설정 삭제

Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#no access-list 1 permit 192.168.3.1 0.0.0.255
Router(config)#int fa 0/0
Router(config-if)#no ip access-group 1 out
Router(config-if)#exit

Router(config)#do show run
!
interface FastEthernet0/0
 ip address 192.168.4.1 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 192.168.2.1 255.255.255.0
 duplex auto
 speed auto
!
interface Ethernet0/0/0
 ip address 192.168.3.1 255.255.255.0
 duplex auto
 speed auto
!

- 참고
1. no access-list 1 permit 192.168.3.1 0.0.0.255 를 입력해주면 삭제는 되지만 interface fa 0/0 (지정한 포트) 에 정보가 남아 있기 때문에 ping이 가지 않게 된다.
그렇기 때문에 다시 interface fa 0/0 (지정한 포트)로 가서 no ip access-group 1 out/in 을 입력해주면 완벽하게 삭제해 줄 수 있다.

Router(config)#no access-list 1 permit 192.168.3.1 0.0.0.255
Router(config)#int fa 0/0
Router(config-if)#no ip access-group 1 out
Router(config-if)#exit


2. 지정된 포트로 가서 no ip access-group 1 out/in 을 입력해 주면 서로 ping은 가지만 no access-list number정보는 남게된다.
그렇기 때문에 
no access-list 1 permit 192.168.3.1 0.0.0.255 를 입력해 주면 완벽하게 삭제해 줄 수 있다.

Router(config)#int fa 0/1
Router(config-if)#no ip access-group 1 out
Router(config-if)#exit
Router(config)#no access-list 1 permit 192.168.3.1 0.0.0.255

-----------------------------------------------------------------------------------------------------

Standard ACL - deny 설정

Router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
Router(config)#access-list 1 deny 192.168.2.1 0.0.0.255
- access-list의 그룹 넘버를 1로 정의하고 192.168.2.1 만 설정한다.
- deny 일 경우 기본값은 permit any이다. 즉, 모든 ip를 허락하고 원하는 ip만 접속을 차단 시키는 것이다.

Router(config)#int fa 0/1
Router(config-if)#ip access-group 1 out   - access-list 그룹 1의 모든 ip 주소는 interface fa 0/1 의 접속(= fa 0/0으로 나가는 것)을 차단한다.
Router(config-if)#exit
Router(config)#do show run
!
interface FastEthernet0/0
 ip address 192.168.4.1 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/1
 ip address 192.168.2.1 255.255.255.0
 ip access-group 1 out
 duplex auto
 speed auto
!
interface Ethernet0/0/0
 ip address 192.168.3.1 255.255.255.0
 duplex auto
 speed auto
!

!
access-list 1 deny 192.168.2.0 0.0.0.255
!



'CCNA 기초' 카테고리의 다른 글

Dynamic NAT(Network Address Translation)  (0) 2008.12.05
Static NAT(Network Address Translation)  (0) 2008.12.05
ACL(Access List) - Extended Access List  (0) 2008.12.05
WAN - Frame Relay  (0) 2008.12.04
WAN (Wide Area Network) - PPP & HDLC  (0) 2008.12.04
Wireless LAN  (0) 2008.12.04