Cisco IOS 패턴
Cisco IOS 또는 IOS-XE 스니펫을 검토하거나, 변경 창 체크리스트를 작성하거나, 라우터나 스위치에서 증거를 수집하는 방법을 설명할 때 이 스킬을 사용하세요. 상황을 악화시키지 않으면서 말이죠.
사용 시점
- 계획된 변경 전에 IOS 또는 IOS-XE 설정을 검토할 때.
- 문제 해결을 위해 읽기 전용
show명령어를 선택할 때. - ACL 와일드카드 마스크와 인터페이스 방향을 확인할 때.
- 글로벌, 인터페이스, 라우팅 프로세스, 라인 설정 모드를 설명할 때.
- 변경 사항이 running config에 반영되었고 의도적으로 저장되었는지 확인할 때.
운영 규칙
IOS 예제는 패턴으로 취급하세요. 프로덕션에 바로 붙여넣을 수 있는 변경 사항이 아닙니다. 실제 장비에서 변경을 수행하기 전에 플랫폼, 인터페이스 이름, 현재 설정, 롤백 경로, out-of-band 접근을 확인하세요.
다음 워크플로우를 선호하세요:
- 읽기 전용 명령어로 현재 상태를 캡처합니다.
- 정확한 후보 설정을 검토합니다.
- 관리 접근이 차단되지 않음을 확인합니다.
- 유지보수 창에서 가장 작은 변경을 적용합니다.
- 상태를 다시 읽고 기준과 비교한 후, 검증이 완료되면 저장합니다.
모드 참조
Router> enable
Router# show running-config
Router# configure terminal
Router(config)# interface GigabitEthernet0/1
Router(config-if)# description UPLINK-TO-CORE
Router(config-if)# no shutdown
Router(config-if)# exit
Router(config)# end
Router# show running-config interface GigabitEthernet0/1
running-config는 활성 메모리입니다. startup-config는 재부팅 시 유지됩니다. 명령어가 수락되었다고 해서 변경 사항을 저장하지 마세요. 먼저 동작을 검증한 후, 변경이 승인되면 copy running-config startup-config를 사용하세요.
읽기 전용 수집
show version
show inventory
show processes cpu sorted
show memory statistics
show logging
show running-config | section line vty
show running-config | section interface
show running-config | section router bgp
show ip interface brief
show interfaces
show interfaces status
show vlan brief
show mac address-table
show spanning-tree
show ip route
show ip protocols
show ip access-lists
show route-map
show ip prefix-list
설정에 비밀, 고객 이름, 또는 사설 토폴로지가 포함될 수 있으므로 전체 설정을 티켓에 덤프하지 말고 필요한 특정 섹션만 수집하세요.
와일드카드 마스크
IOS ACL 및 많은 라우팅 구문은 서브넷 마스크 대신 와일드카드 마스크를 사용합니다.
서브넷 마스크 와일드카드 마스크
255.255.255.255 0.0.0.0
255.255.255.252 0.0.0.3
255.255.255.0 0.0.0.255
255.255.0.0 0.0.255.255
배포 전에 와일드카드 마스크를 검토하세요. 서브넷 마스크를 와일드카드로 실수로 사용하면 의도보다 훨씬 많은 트래픽이 일치할 수 있습니다.
ip access-list extended WEB-IN
10 permit tcp 192.0.2.0 0.0.0.255 any eq 443
999 deny ip any any log
모든 ACL은 마지막에 암시적 거부(implicit deny)가 있습니다. 운영 목표에 미스 관찰이 포함된 경우 명시적인 로깅 거부를 추가하고, 로깅 볼륨이 안전한지 확인하세요.
ACL 배치 검토
인터페이스에 ACL을 적용하기 전에 다음 질문에 답하세요:
- 필터링할 트래픽 방향은
in인가요,out인가요? - 관리 트래픽이 알려진 점프 호스트 또는 관리 서브넷에서 오나요?
- 필요한 라우팅, DNS, NTP, 모니터링, 또는 애플리케이션 트래픽에 대한 명시적 허용이 있나요?
- 안전한 테스트 소스에서 히트 카운터를 사용할 수 있나요?
- 롤백 명령어와 활성 콘솔 또는 out-of-band 경로가 있나요?
방화벽이나 ACL 보호를 제거하여 연결성을 테스트하지 마세요. 먼저 카운터, 로그, 라우트 상태를 읽으세요.
인터페이스 위생
interface GigabitEthernet0/1
description UPLINK-TO-CORE
switchport mode trunk
switchport trunk allowed vlan 10,20,30
switchport trunk native vlan 999
no shutdown
명확한 설명, 명시적 스위치포트 모드, 문서화된 네이티브 VLAN을 사용하세요. 라우티드 인터페이스의 경우, 링크 상태가 포워딩이 올바르다고 가정하기 전에 마스크, 피어 주소 지정, 라우팅 프로세스를 확인하세요.
변경 창 확인
실제 변경 사항과 일치하는 전후 확인을 사용하세요.
show running-config | section interface GigabitEthernet0/1
show interfaces GigabitEthernet0/1
show logging | include GigabitEthernet0/1|changed state|line protocol
show ip route <prefix>
show ip access-lists <name>
라우팅 변경의 경우, 변경 전후에 이웃 상태와 라우트 테이블도 캡처하세요. ACL 변경의 경우, 일반 ping에 의존하지 말고 계획된 테스트 소스의 히트 카운터를 비교하세요.
안티 패턴
- 장치별 diff 없이 생성된 설정을 적용하는 것.
- 변경 후 검사를 통과하기 전에 설정을 저장하는 것.
- IOS가 와일드카드 마스크를 기대하는 곳에 서브넷 마스크를 사용하는 것.
- ACL을 잘못된 인터페이스 방향에 적용하는 것.
- ACL, 라우트 정책, 또는 인증을 비활성화하여 문제를 해결하는 것.
- 비밀 및 토폴로지를 정리하지 않고 전체 설정을 공용 도구에 붙여넣는 것.
참조
- 에이전트:
network-config-reviewer - 에이전트:
network-troubleshooter - 스킬:
network-config-validation - 스킬:
network-interface-health