안녕하세요.

 

오늘은 기존에 설치 되어진 WLC에다가 AP만 추가하는 방법에 대해서 알아보도록 하겠습니다. 

 

현재 고객사에서 C9800L WLC를 사용하고 있습니다. 기존에 사용하고 있는 오래된 AP를 제거 하고 C9120AXI-S를 설치 해보겠습니다. 

 

1. WLC를 Datacenter에 설치되어져 있습니다

2. AP는 Office에 설치 할 예정입니다. 물리적으로 떨어져있고 같은 L2 Domain이 아니기때문에 자동으로 AP가 등록 되지 않습니다.

3. 현재 고객사는 AP MGMT를 수동으로 IP를 설정 하고 있습니다. 

 

   option1: DHCP option를 사용해서 자동으로 AP가 WLC에 등록 하는 방법

   option2: AP에 Static IP를 설정하고 WLC IP를 수동으로 입력 합니다

                그리고 WLC에서 AP MAC를 등록하고 어떤 Profile를 적용 할지 입력합니다. 

 

 

현재 고객사가 option2를 사용하고 있기 떄문에 Option2를 사용하여 AP를 기존에 있는 WLC에 등록해보겠습니다.

 

1. AP를 POE 스위치에 연결하고 노트북 콘솔케이블을 AP에 연결합니다

    또는 파워어탭터를 AP에 연결하고 콘솔케이블을 AP에 연결합니다.

 

AP 설정

capwap ap hostname CISCO-AP-01
capwap ap ip 10.1.1.10 255.255.255.0 10.1.1.254
capwap ap primary-base CISCO-WLC-01 10.2.1.10

capwap ap hostname CISCO-AP-02
capwap ap ip 10.1.1.11 255.255.255.0 10.1.1.254
capwap ap primary-base CISCO-WLC-01 10.2.1.10

capwap ap hostname CISCO-AP-03
capwap ap ip 10.1.1.12 255.255.255.0 10.1.1.254
capwap ap primary-base CISCO-WLC-01 10.2.1.10

capwap ap hostname CISCO-AP-04
capwap ap ip 10.1.1.13 255.255.255.0 10.1.1.254
capwap ap primary-base CISCO-WLC-01 10.2.1.10

 

WLC설정하기 전에 AP4대에 MAC를 확인합니다.

WLC 설정

ap xxxx.xxxx.xxxx
 policy-tag office-PolicyTag
 site-tag office
 rf-tag default-rf-tag

ap xxxx.xxxx.xxxx
 policy-tag office-PolicyTag
 site-tag office
 rf-tag default-rf-tag

ap xxxx.xxxx.xxxx
 policy-tag office-PolicyTag
 site-tag office
 rf-tag default-rf-tag

ap xxxx.xxxx.xxxx
 policy-tag office-PolicyTag
 site-tag office
 rf-tag default-rf-tag

 

그리고 고객사 사용하고 있는 천장에 AP를 제거 하고 새 AP를 설치 합니다.

처음에 AP가 WLC에 연결되면 Firmware upgrade 또는 Firmware downgrade때문에 자동으로 AP가 여러번 재부팅 됩니다.

 

그리고 WLC GUI에 로그인해서 확인해보면 아래와 같이 연결 완료를 확인 할수 있습니다.

고객사 정보 때문에 아래 제한적으로 사진을 캡처 했습니다. 아래 사진처럼 초록색으로 연결 완료 확인 가능 합니다. 

 

AP 색을 확인해보면 초록색이면 정상적으로 WLC에 연결이 되었습니다.

유저가 AP에 접속하면 색이 파랑색으로 표시가 됩니다. 

 

초록색 또는 파랑색은 정상적으로 AP가 WLC에 등록되어 동작중입니다. 

 

지금까지 글을 읽어주셔서 감사합니다. 

 

안녕하세요. 

 

오늘은 C9800CL WLC configuration Setup Wizard을 알아보겠습니다.

 

테스트를 위해서는 C9800CL를 EVE-NG에 설치해야 합니다.

이전 강의를 참고 부탁드립니다.

https://itblog-kr.tistory.com/50

 

[2024][EVE-NG #18] EVE-NG에 C9800CL Install

안녕하세요. 오늘은 EVE-NG #18- EVE-NG에 C9800CL WLC를 설치 하겠습니다. EVE-NG 공식 문서는 아래와 같습니다.https://www.eve-ng.net/index.php/documentation/howtos/cisco-wireless-c9800-cl/ Cisco Wireless C9800-CL -Versions this

itblog-kr.tistory.com

 

기본적은 토폴로지는 아래와 같습니다.

WLC - G1 - MGMT IP - VRF MGMT를 생성해서 MGMT Traffix이랑 Data Traffic를 분리하였습니다. 설정 방법은 이전 강의를 참고 부탁드립니다

IP: 192.168.10.227

WLC - G2 - Data Traffic 입니다. 

 

1. WLC 장비를 GUI를 통해서 접속 합니다.

https://192.168.10.227

Deployment Mode: Standalone

Hostname: 적절한 WLC이름을 지정합니다

Country: 설치하고자 하는 나라를 선택합니다. 

Date: 오늘 날짜를 선택 합니다.

Time: Timezone를 선택합니다. 

NTP Servers - NTP서버를 선택합니다. 

MGMT interface 변경을 원하면 수정 합니다. 

Static Route Setting: CLI모드에서 추가 했기때문에 수정 할 필요가 없습니다.

만약에 Static Route를 수정를 원하시면 변경 가능 합니다. 

0.sg.pool.ntp.org - 203.123.48.1
1.sg.pool.ntp.org - 167.172.70.21
2.sg.pool.ntp.org - 106.10.186.200
3.sg.pool.ntp.org - 203.123.48.1

 

Next를 클릭하면 Wireless Network Settings 표시 됩니다

 

2. Add버튼을 클릭해서 Wireless Network를 추가합니다.

 

Network Name: TEMP-WLC1

Network Type: Employee

Security: WPA2 Personal 

Pre-Shared Key: CiscoCisco

 

3. Next 버튼을 클릭 합니다. 

 

4. RF-GROUP Name: LM-RG1

AP Certificate

Signature Algorithm - SHA256

Password: CiscoCisco

그리고 Summary 버튼을 클릭 합니다. 

 

5. Click Finish버튼을 클릭 합니다.

 

6. 아래처럼 경고 메시지가 뜨는데 Yes 버튼을 클릭 합니다. 

 

7. 페이지가 자동으로 새로고침 되면서 아래처럼 로그인 페이지를 확인 가능 합니다. 

 

8. 로그인하면 아래처럼 확인가능합니다. 

현재는 테스트 AP가 없기떄문에 Access-points에 숫자가 0으로 표시 됩니다. 

 

지금까지 9800CL 초기 기본 설정에 대해서 확인 하였습니다.

지금까지 글을 읽어주셔서 감사합니다. 

안녕하세요. 

 

오늘은 Fortigate license를 추가적으로 Forticloud에 등록 하는 방법에 대해서 알아보겠습니다.

 

Forticloud를 접속합니다.

https://www.forticloud.com

 

LoginMgr

 

login.forticloud.com

 

1. Services 클릭

2. Asset Management 클릭합니다. 

3. Products -> Product List 선택합니다. 



4. 장비 또는 장비 박스에서 시리얼 번호를 확안하고 Product list에서 검색합니다.

장비에서 시리얼번호를 확인하는 방법은 아래와 같습니다.

Dashboard -> Status -> Serial Number 옆에 copy모양을 클릭합니다. 

 

5. 시리얼번호를 입력하면 아래와 같이 장비가 검색됩니다.  시리얼을 클릭 합니다. 

 

6. Add Licenses를 클릭 합니다. 

 

7. Registration Code를 확인합니다. 

 

라이센스를 구매하면 구매한 벤더로부터 라이센스 PDF파일을 받는데, 이 파일을 오픈 합니다.

아래같은 정보를 확인할수 있는데 Contract Registration Code를 복사합니다. 

 

8. 코드를 입력하고 Next 버튼을 클릭 합니다. 

 

9. 라이센스 적용후 다시 시리얼번호를 클릭하고 라이센스 정보를 확인 가능 합니다. 

 

10. 포티넷 방화벽 장비를 로그인 후 라이센스를 확인해보면 

아래 처럼 UTM 라이센스가 적용이 안되었는데, 시간이 좀 지나고 forticloud라이센스를 동기화 하면 라이센스 업데이트 된 것을 확인 가능 합니다. 

 

11. 만약에 갱신이 안되었다면 아래처럼 Update license & Defiinitons now 버튼을 클릭 합니다. 

 

버튼을 클릭해서 곧바로 업데이트가 안되고 약 10~20분 기다리면, 업데이트 됩니다.

안녕하세요.

 

오늘은 EVE-NG #18- EVE-NG에 C9800CL WLC를 설치 하겠습니다.

 

EVE-NG 공식 문서는 아래와 같습니다.

https://www.eve-ng.net/index.php/documentation/howtos/cisco-wireless-c9800-cl/

 

Cisco Wireless C9800-CL -

Versions this guide is based on: EVE Image Foldername Downloaded Filename Version CPU RAM NIC Type NICs c9800cl-17.04.01 C9800-CL-universalk9.17.04.01.iso XE IOS C9800-CL-universalk9.17.04.01 4 4096 VMXNET3 3 Instructions Other versions should also be supp

www.eve-ng.net

 

 

 

1. EVE-NG에 SSH로 접속합니다.

root@eve-ng:~#  mkdir /opt/unetlab/addons/qemu/c9800cl-17.04.01
root@eve-ng:~# cd /opt/unetlab/addons/qemu/c9800cl-17.04.01
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# 

 

2. 이미지 파일을 EVE-NG에 전송합니다. 

WINSCP를 설치 해야 한다면 아래링크를 클릭후 WINSCP를 설치 합니다.

https://winscp.net/eng/index.php

 

WinSCP

WinSCP is a popular free SFTP and FTP client for Windows, a powerful file manager that will improve your productivity. It supports also local-local mode and FTPS, S3, SCP and WebDAV protocols. Power users can automate WinSCP using .NET assembly.

winscp.net

 

폴더 위치는 아래와 같습니다.

/opt/unetlab/addons/qemu

 

그리고 폴더를 생성할때 아래와 같은 형식이어야 합니다.

c9800cl-

 

 

3. HDD를 생성합니다. 

root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# /opt/qemu/bin/qemu-img create -f qcow2  virtioa.qcow2 16G
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# ls -l
total 878884
-rw-r--r-- 1 root root 899770368 Apr 2 02:08 C9800-CL-universalk9.17.04.01.iso
-rw-r--r-- 1 root root 197120 Apr 2 11:22 virtioa.qcow2
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01#

 

4. 빈 하드에 C9800-CL를 설치 합니다.

/opt/qemu-2.2.0/bin/qemu-system-x86_64 -nographic -drive file=virtioa.qcow2,if=virtio,bus=0,unit=0,cache=none -machine type=pc-1.0,accel=kvm -serial mon:stdio -nographic -nodefconfig -nodefaults -rtc base=utc -cdrom C9800-CL-universalk9.17.04.01.iso -boot order=dc -m 4096

 

5.  두번째를 선택하고 Enter를 누릅니다. 

Press any key to continue.
Press any key to continue.
Press any key to continue.


         GNU GRUB  version 2.02 

 +-------------------------------------------------------------------------+
 |  C9800-CL Virtual (VGA) Console - 2020-11-27_00.00                      | 
 |  *C9800-CL Serial Console - 2020-11-27_00.00                            |  
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |
 |                                                                         |  
 +-------------------------------------------------------------------------+

 

6. 아래 처럼 메시지가 보이면 ctrl+a를 누르고 c를 선택합니다.

*Aug 22 18:19:33.393: %IOSXEBOOT-4-BOOT_SRC: (rp/0): CD-ROM Boot
*Aug 22 18:19:33.417: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Using Serial console
*Aug 22 18:19:33.437: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Installing GRUB to /dev/bootflash
*Aug 22 18:19:34.130: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Copying image to /boot
*Aug 22 18:19:37.777: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Copying image to /bootflash
*Aug 22 18:19:42.965: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Creating grub configuration
*Aug 22 18:19:45.443: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Ejecting CD-ROM tray
*Aug 22 18:19:45.459: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): CD-ROM Installation finished
*Aug 22 18:19:45.466: %IOSXEBOOT-4-BOOT_CDROM: (rp/0): Rebooting from HD

 

7. 아래처럼 qemu가 표시되면 아래와 같이 quit를 입력하고 엔터를 누릅니다. 

(qemu) quit

 

8. ISO media파일을 삭제하고 권환을 수정 합니다. 

root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# ls                   
C9800-CL-universalk9.17.04.01.iso  virtioa.qcow2
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# rm C9800-CL-universalk9.17.04.01.iso
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# ls
virtioa.qcow2
root@eve-ng:/opt/unetlab/addons/qemu/c9800cl-17.04.01# /opt/unetlab/wrappers/unl_wrapper -a fixpermissions

 

9. eve-ng를 접속 합니다.

노드를 추가합니다.  

 

저는 인터넷도 연결하기 위해서 아래와 같이 Cloud가 추가 하여서 케이블은 연결 하였습니다

 

Gi: MGMT

Gi: DATA

 

1. MGMT VRF 추가하기

vrf definition MGMT
 !
 address-family ipv4
 exit-address-family

 

2. Interface Ip설정

interface GigabitEthernet1
 no switchport
 vrf forwarding MGMT
 ip address 192.168.10.227 255.255.255.0
 negotiation auto
 no mop enabled
 no mop sysid

 

3. 라우팅 테이블 추가

ip route vrf MGMT 0.0.0.0 0.0.0.0 192.168.10.253

 

4. GUI로그인 유저 생성

username kevin privilege 15 secret <Password>

 

5. ping to WLC from laptop

 

6. Access 9800-CL WLC - https://192.168.10.227

 

7. 아까 CLI에서 생성한 username라 비밀번호를 입력합니다.

아래 사진처럼 기본 설정 페이지가 표시 되면 정상적으로 C9800CL 동작중입니다.

 

지금까지 C9800CL를 EVE-NG에 설치하고 GUI로 접속 하는 방법에 대해서 알아보았습니다.

안녕하세요.

 

오늘은 Fortigate 방화벽을 fortiCloud에 등록해서 라이센스등을 적용시켜보겠습니다. 

 

회사에서 사용하는 Forticloud계정이나 고객사가따로 포티넷 방화벽및 다른 제품을 직접 관리하면 고객사 계정으로 포티넷 클라우드를 접속합니다. 계정이 없으신분은 계정을 따로 만드셔야 합니다.

 

아래처럼 FortiCloud를 접속하고 로그인 합니다. 

https://www.forticloud.com

 

LoginMgr

 

login.forticloud.com

로그인 하고 Services -> Asset Mangement를 클릭합니다

 

Product List를 클릭하고 Register More 버튼을 클릭합니다. 

 

시리얼 번호를 확인합니다. 

 

시리얼 번호 확인하는 방법

1. 박스에서 시리얼 번호 확인하기

2. Fortigate Firewall 장비에서 시리얼 확인하기. 

3. 콘솔포트를 Console에 연결해서 CLI 모드에서 시리얼 확인하기

4. 케이블을 port1에 연결하면 fortigate 방화벽에 192.168.1.1 DHCP로 할당합니다

    그리고 https://192.168.1.99 접속해서 GUI상에서 장비 시리얼 번호 확인하기

 

1. 시리얼 입력

2. non-government user 선택

3. Next 버튼을 클릭 합니다. 

1. Forticloud Key키를 입력합니다. 장비 맨 윗부분에 보면 Forticloud Key를 확인 할수 있습니다.

2. Fortinet Partnet를 선택합니다. 

3. 그리고 next버튼을 클릭합니다. 

 

1. 아래 부분를 체크 합니다.

By accepting thses terms, you are activating this support contract and the entitlement period provided can not be changed, if you wish to continue, click "confirm". 

2. 그리고 Confirm를 선택합니다.

 

그리고 등록한 장비를 FortiClud 에서 Product List에 시리얼 번호를 입력하면 검색이 가능 합니다.

 

Fortigate장비를 WAN포트에 인터넷을 연결하면 장비가 FortiCloud에 자동으로 등록 되면서 라이센스및 contract이 자동으로 등록 됩니다. 

 

이부분은 추후에 다시 업데이트 하겠습니다.

 

감사합니다. 

안녕하세요. 

 

오늘은 Cat9300L 스위치 라이센스를 CSSM에 등록하는 방법에 대해서 알아보겠습니다.

 

1. Traditional 방식

2. Smart License 

3. Smart License Using Policy 

 

위에 3가지 방법에 대해서는 추후에 자세히 설명 하도록 하겠습니다.

 

현재 구매한 스위치에 디폴트로 어떤 라이센스 방식을 사용 하는지 확인해보겠습니다.

아래 처럼 Smart License Using Policy 방식을 사용 하고 있습니다. 

TSIWL-CSW-01#show license status
Utility:
  Status: DISABLED

Smart Licensing Using Policy:
  Status: ENABLED

 

현재 사용하고 있는 IOSXE버전은 아래와 같습니다.

Switch Ports Model              SW Version        SW Image              Mode
------ ----- -----              ----------        ----------            ----
*    1 29    C9300L-24T-4G      17.12.03          CAT9K_IOSXE           INSTALL

 

1. 라이센스를 등록하기전에 라이센스가 CSSM - Cisco Account에 등록 되어져 있어야 합니다.

2. CSSM서버에 통신이 가능한지 확인 합니다.

TSIWL-CSW-01#telnet smartreceiver.cisco.com 443
Trying smartreceiver.cisco.com (72.163.15.144, 443)... Open

 

3. 스위치에 기본 설정을 합니다

TSIWL-CSW-01(config)#license smart transport smart
TSIWL-CSW-01(config)#license smart url default
TSIWL-CSW-01#wr

 

4. CSSM 로그인후 New Token 클릭 합니다. 

5. Create Token 클릭 합니다. 

 

6. 생성된 키를 복사합니다

 

7. Key를 Cisco 스위치에 등록 합니다.

TSIWL-CSW-01#license smart trust idtoken <copy the token> all force

 

8. 라이센스 상태를 확인 합니다

Trust Code에보면 정상적으로 라이센스가 설치 된것을 확인 가능 합니다

TSIWL-CSW-01#show license status 

Utility:
  Status: DISABLED

Smart Licensing Using Policy:
  Status: ENABLED

Account Information:
  Smart Account: **** you can see your SA account ***  As of Oct 02 11:43:47 2024 UTC
  Virtual Account: *** the VA account also show ***


Trust Code Installed:
  Active: PID:C9300L-24T-4G,SN:
    INSTALLED on Oct 02 11:43:35 2024 UTC
  Standby: PID:C9300L-24T-4G,SN:
    INSTALLED on Oct 02 11:43:36 2024 UTC

 

9. CSSM에서 라이센스 확인하기

 

 

 

안녕하세요.

 

오늘은 [ISR4221]-Performance License Install(SLR) 입니다. 

 

고객사에 라우터가 인터넷 접속이 불가능 하여 offline 방식으로 라이센스를 설치해보겠습니다.

 

Step1 장비 버전 확인 -Smart license 지원

BDKDD02#show version
Cisco IOS XE Software, Version 16.06.08

 

Step2 Smart license disable

BDKDD02(config)#no license smart enable

 

Step3 download PAK file from CSSM

시리얼번호는 보안상으로 *처리 하였습니다. 

BDKDD02#license smart reservation request local
Enter this request code in the Cisco Smart Software Manager portal:
UDI: PID:ISR4221/K9,SN:FJC**********
    Request code: BC-ZISR4221/K9:FJC*********-AfSn9CzT1-76

 

Step4 CSSM 접속후 라이센스 다운로드 

고객사 정보가 있어서 생략 하였습니다. 

 

Step5 USB에 라이센스 파일 저장하기

Step6 USB를 라우터에 삽입하기

Step7 USB 라이센스 확인

BDKDD02#dir usb0:
Directory of usb0:/

   54  -rwx             2184  Jul 11 2024 06:24:56 +00:00  FJC***********_20240710110756.lic

 

Step8 라이센스를 장비에 복사하기

BDKDD02#copy usb0:FJC*******_20240710110756.lic flash:
Destination filename [FJC******_20240710110756.lic]?
Copy in progress...C
2184 bytes copied in 0.057 secs (38316 bytes/sec)

 

Step9 Flash메모리에 라이센스 제대로 복사 되었는지 확인하기

BDKDD02#dir flash:
Directory of bootflash:/

   23  -rw-             2184  Jul 11 2024 08:46:32 +00:00  FJC*******_20240710110756.lic

 

Step10 라우터 성능 확인

BDKDD02#show platform hardware throughput level
The current throughput level is 35000 kb/s

 

Step11 라이센스 설치 

BDKDD02#license install flash:FJC******_20240710110756.lic
Installing licenses from "flash::FJC******_20240710110756.lic"
Installing...Feature:ipbasek9...Failed:
% Error: Duplicate license
Installing...Feature:throughput...Successful:Supported
1/2 licenses were successfully installed
1/2 licenses were existing licenses
0/2 licenses were failed to install

BDKDD02#
*Jul 11 08:48:39.268: %LICENSE-6-INSTALL: Feature throughput 1.0 was installed in this device. UDI=ISR4221/K9:FJC******; StoreIndex=1:Primary License Storage

 

Step12 저장후 장비 재부팅

BDKDD02#wr
Building configuration...

[OK]
BDKDD02#reload

 

Step13 Throughput 75Mbps 변경하기

BDKDD02(config)#platform hardware throughput level 75000

 

Step14 저장하고 재부팅

BDKDD02#wr
Building configuration...


*Jul 12 06:14:58.126: %SYS-5-CONFIG_I: Configured from console by console[OK]
BDKDD02#
BDKDD02#
*Jul 12 06:15:04.098: %SYS-2-PRIVCFG_ENCRYPT: Successfully encrypted private config filereload
Proceed with reload? [confirm]

 

Step15 확인하기

BDKDD02#show platform hardware throughput level
The current throughput level is 75000 kb/s

 

Throughput이 75Mbps 변경되었습니다.

 

안녕하세요. 

 

이번에는 CISCO ISR4221 IOS Upgrade입니다. 

 

실제 장비에 콘솔을 접속해서 IOS 버전을 확인합니다. 

BDKDD02#show version
Cisco IOS XE Software, Version 16.06.08
Cisco IOS Software [Everest], ISR Software (X86_64_LINUX_IOSD-UNIVERSALK9_IAS_NPE-M), Version 16.6.8, RELEASE SOFTWARE (fc3)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2020 by Cisco Systems, Inc.
Compiled Thu 23-Apr-20 19:06 by mcpre

 

현재 IOS XE Softwae version은 16.06.08 입니다.

Cisco 웹사이트에 접속해서 현재 Cisco 추천하는 IOS XE 버전을 확인합니다. 

https://software.cisco.com/download/home/286310700/type/282046477/release/Everest-16.6.4

 

 

위에 사진처럼 IOS XE software version에 별 모양이 있으면 현재 기준으로 시스코에서 권장하는 IOS버전입니다. 

 

Step1 - Download IOS 파일

저는 ISR 4200 Series IOS XE Universal - no Payload Encryption를 다운로드하겠습니다. 

 

Step2 - IOS파일 USB에 복사

그리고 USB를 통해서 이미지 파일을 업로드합니다. 

 

Step3 - USB를 라우터에 연결합니다. 

 

BDKDD02#
*Jul 11 05:20:04.520: %IOSD_INFRA-6-IFS_DEVICE_OIR: Device usb0 added

 

콘손 프로그램을 확인하면 usb0이 인식되었습니다.

BDKDD02#dir usb0:
Directory of usb0:/

   53  -rwx        705554857  Jul 11 2024 13:05:50 +00:00  isr4200-universalk9_ias_npe.17.06.06a.SPA.bin

 

dir usb0: 커맨드를 입력하면 IOS파일 확인 가능합니다.

 

Step4: 이미지 파일을 라우터에 복사합니다. 

BDKDD02#copy usb0:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin flash:
Destination filename [isr4200-universalk9_ias_npe.17.06.06a.SPA.bin]?
Copy in progress...CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC
705554857 bytes copied in 42.189 secs (16723669 bytes/sec)
BDKDD02#

 

실제 IOS파일이 제대로 복사되었는지 확인합니다.

BDKDD02#dir flash:
Directory of bootflash:/

   11  -rw-        479963020  Feb 29 2024 13:22:21 +00:00  isr4200-universalk9_ias_npe.16.06.08.SPA.bin
169345  drwx             4096  Jul 11 2024 03:10:05 +00:00  .installer
153217  drwx             4096  Feb 29 2024 13:26:50 +00:00  .ssh
88705  drwx             4096  Feb 29 2024 13:29:43 +00:00  core
64513  drwx             4096  Jul 11 2024 03:12:36 +00:00  .prst_sync
80641  drwx             4096  Feb 29 2024 13:27:04 +00:00  .rollback_timer
   12  -rw-                0  Feb 29 2024 13:27:20 +00:00  tracelogs.Dde
322561  drwx            24576  Jul 11 2024 04:38:11 +00:00  tracelogs
   14  -rw-               34   Jul 9 2024 05:57:22 +00:00  pnp-tech-time
225793  drwx             4096  Feb 29 2024 13:28:15 +00:00  virtual-instance
   13  -rw-               30  Jul 11 2024 03:12:37 +00:00  throughput_monitor_params
   15  -rw-            53302   Jul 9 2024 05:57:31 +00:00  pnp-tech-discovery-summary
   16  drwx             4096   Jul 9 2024 05:53:18 +00:00  lost+found
   17  -rw-        705554857  Jul 11 2024 05:23:22 +00:00  isr4200-universalk9_ias_npe.17.06.06a.SPA.bin

 

Step5 파일 무결성 확인

BDKDD02#verify flash:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin
Verifying file integrity of bootflash:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin......
Embedded Hash   SHA1 : 87DE4342A2105C5B4A51261F18FF8F1F86DF5361
Computed Hash   SHA1 : 87DE4342A2105C5B4A51261F18FF8F1F86DF5361
Starting image verification
Hash Computation:    70 %
*Jul 11 06:06:54.615: %PLATFORM-4-ELEMENT_WARNING:  SIP0: smand:  RP/0: Used Memory value 89% exceeds warning level100%Done!
Computed Hash   SHA2: 7245b84636792432ce7d79c4715f6261
                      12be90a195fa9d8d1ab4f29d559ef20c
                      70f5993df11344d056520fab0588da60
                      2573f1ba6a9d2e2d8f648a37bb69bd19

Embedded Hash   SHA2: 7245b84636792432ce7d79c4715f6261
                      12be90a195fa9d8d1ab4f29d559ef20c
                      70f5993df11344d056520fab0588da60
                      2573f1ba6a9d2e2d8f648a37bb69bd19

Digital signature successfully verified in file bootflash:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin

BDKDD02#

 

Step6 - IOS XE 변경

BDKDD02(config)# boot system flash:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin

 

Step7 - 저장

BDKDD02#wr
Building configuration...

 

Step8 - 설정값 확인

BDKDD02#show run | in boot
boot-start-marker
boot system flash:isr4200-universalk9_ias_npe.17.06.06a.SPA.bin
boot-end-marker
license boot level appxk9
license boot level securityk9_npe
diagnostic bootup level minimal

 

Step9 - 재부팅

 

BDKDD02#reload

 

Step10- 재부팅 후 version 확인

BDKDD02#show version
Cisco IOS XE Software, Version 17.06.06a
Cisco IOS Software [Bengaluru], ISR Software (X86_64_LINUX_IOSD-UNIVERSALK9_IAS_NPE-M), Version 17.6.6a, RELEASE SOFTWARE (fc3)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2023 by Cisco Systems, Inc.
Compiled Fri 20-Oct-23 18:26 by mcpre

 

위와 같이 업그레이드 완료 되었습니다. 

 

지금까지 [ISR4221]-Cisco Router IOS Upgrade 글을 읽어주셔서 감사합니다. 

 

안녕하세요. 

 

오늘은 [2024][Juniper SRX #16] password recovery입니다. 

 

기존에 사용하던 방화벽 또는 새로운 구축 또는 유지보수 고객사 방화벽 장비 로그인 정보를 모를 때 password recovery를 진행해야 합니다. 

 

EVE-NG에서 Juniper vSRX를 실행하고 패스워드 리커버리를 테스트할 수 있습니다.

 

자세한 내용은 주니퍼 홈페이지를 참고 부탁드립니다.

https://www.juniper.net/documentation/us/en/software/junos/user-access/topics/topic-map/recovering-root-password.html

 

Recover a Root Password | Junos OS | Juniper Networks

If you forget the root password for the router, you can use the password recovery procedure to reset the root password. Before you begin, note the following: You need console access to recover the root password. To recover the root password:

www.juniper.net

 

토폴로지입니다.

 

기본 설정 다 지우고 root 패스워드는 juniperjunuper로 설정합니다. 

root> configure 
Entering configuration mode

[edit]
root# delete 
This will delete the entire configuration
Delete everything under this level? [yes,no] (no) yes 


[edit]
root# set system or
                 ^
syntax error.
root# set system root-authentication plain-text-password    
New password:
Retype new password:

[edit]
root# set system host-name srx 
root# commit 
commit complete

[edit]
root# 

 

그리고 패스워드를 까먹었다고 가정하겠습니다. 

root@firewall:~ # cli
root@srx> exit 

root@firewall:~ # exit
logout

FreeBSD/amd64 (srx) (ttyu0)

login: root
Password:
Login incorrect
login: ^C

 

1. 장비를 콘솔 케이블에 연결합니다. 

2. putty 또는 Crt 프로그램을 실행하고 장비에 접속합니다.

3. 장비를 재부팅합니다. 파워케이블을 제거 후 다시 연결합니다.

4. Ctrl-C를 입력합니다. 

제때 입력하지 못하면 장비가 부팅됩니다.

 

다시 전원코드를 제거 후 다시 연결합니다. 

 

저희는 eve-ng에서 테스트하기 때문에, 장비를 power off 하고 power on 합니다. 

Autoboot in 1 seconds... (press Ctrl-C to interrupt) 

Choice: 
Main Menu

1.  Boot [J]unos volume
2.  Boot Junos volume in [S]afe mode

3.  [R]eboot

4.  [B]oot menu
5.  [M]ore options






Choice: 

 

그리고 M를 입력합니다.

Options Menu

1.  Recover [J]unos volume
2.  Recovery mode - [C]LI

3.  Check [F]ile system

4.  Enable [V]erbose boot

5.  [B]oot prompt

6.  [M]ain menu



Choice: 

 

그리고 C를 입력합니다.

부팅이 완료될 때까지 기다립니다. 

Choice: 
Booting Junos in CLI recovery mode ...
Verified /boot/manifest signed by PackageProductionECP256_2021
Verified /boot/loader.rc
Verified /boot/support.4th
Verified /boot/load-dtb.4th
Verified /boot/platform.4th
Verified /boot/platform-load-dtb.4th
-
 / yymmss==[[00xx8++00xx88++00]]  33dd33bb-- boooott//oosddaattaa==ddaattaa==00xx44ffff118eexxtt==00xx5577ee337744  -- siiggnneedd  bby888  || ioonnEECCPP225566__22002211 netstack/../manifest signed by PackageProductionECP256_2021
 Veerriiffiieedd  //ppaacckkaaggeess//sseettss//aaccttiivvee//bboooott//ooss--kkeerrnneell//kkeerrnneell 
 Veerriiffiieedd  //ppaacckkaaggeess//sseettss//aaccttiivvee//bboooott//ooss--vvmmgguueesstt//iinniitt..44tthh 
-  ified /packages/sets/active/boot/junos-modules/init.4th
\- ified /packages/sets/active/boot/junos-net-platform/../manifest signed by PackageProductionECP256_2021
Verified /packages/sets/active/boot/junos-vmguest-platform/../manifest signed by PackageProductionECP256_2021
VVeerriiffiieedd  //ppaacckkaaggeess//sseettss//aaccttiivvee//bboooott//ooss--kkeerrnneell//....//mmaanniiffeesstt  ssiiggnneedd  bbyy  PPaacckkaaggeePPrrooddu

 

부팅이 완료되면, 로그인 없이 바로 root> 모드입니다. 

패스워드를 수정합니다. 그리고 재부팅합니다. 

이유는 현재 모드는 password recovery 모드입니다.

 

NOTE: the 'configure' command to make any required changes. For example,
NOTE: to reset the root password, type:
NOTE:    configure
NOTE:    set system root-authentication plain-text-password
NOTE:    (enter the new password when asked)
NOTE:    commit
NOTE:    exit
NOTE:    exit
NOTE: When you exit the CLI, you will be in a shell.
Starting CLI ... 

root> configure
root# set system root-authentication plain-text-password 
New password:
error: require change of case, digits or punctuation

[edit]
root# set system root-authentication plain-text-password 
New password:
Retype new password:

[edit]
root# commit 
commit complete

[edit]
root@srx# exit 
Exiting configuration mode

root@srx> request system reboot 
Reboot the system ? [yes,no] (no) yes 

Jun 23 11:12:02 shutdown 16997 - - reboot requested by root at Sun Jun 23 11:12:02 2024
Shutdown NOW!
[pid 16997]
Jun 23 11:12:02 shutdown 16997 - - reboot by root: 
Waiting (max 60 seconds) for system process `vnlru' to stop... done
Waiting (max 60 seconds) for system process `syncer' to stop... 
Syncing disks, vnodes remaining... 0 

 

부팅이 완료될 때까지 기다립니다.

 

password recovery mode에서 변경했던 패스워드로 로그인을 시도합니다.

그리고 interface ge-0/0/0 ip주소를 확인합니다.

 

password-recovery는 단순히 비밀번호만 수정합니다. 다른 설정값은 그대로 남아 있습니다. 


login: root
Password:
Last login: Sun Jun 23 10:42:33 on ttyu0

--- JUNOS 21.3R1.9 Kernel 64-bit XEN JNPR-12.1-20210828.6e5b1bf_buil
root@srx:~ # ci
ci: Command not found.
root@srx:~ # cli
root@srx> show interfaces terse | match ge-0/0    
ge-0/0/0                up    up
ge-0/0/0.0              up    up   inet     192.168.1.1/24  
ge-0/0/1                up    up
ge-0/0/2                up    up

 

지금까지 [2024][Juniper SRX #16] password recovery 글을 읽어 주셔서 감사합니다.

안녕하세요. 

 

오늘은 [2024][Juniper SRX #15] commit and rollback 관련 명령어 대해서 알아보겠습니다. 

 

Juniper 장비는 Cisco랑 다르게 commit 명령어를 실행하지 않으면 설정값 명령어들이 적용이 되지 않습니다.

 

Ex) Cisco Side

en

conf t

int g0/0

ip add 10.1.1.1 255.255.255.0

no sh

 

명령어 입력 할 때마다 곧바로 적용됩니다. 하지만 저장되지는 않습니다. 

저장하기 위해서는 write memory 또는 copy running-config startup-config 저장해야 합니다. 

 

Ex) Juniper 

set interface ge-0/0/0 unit 0 family inet address 10.1.1.1/24

 

입력하면 설정값이 적용되지 않고 저장도 되지 않습니다. 

commit 명령어를 입력해야지 적용됩니다 그리고 commit 동시에 저장도 됩니다. 

 

**********************************

Change Configuration --> Condidate Configuration ----> active configuration

 

Ex) 만약에 설정값을 추가 삭제 변경 했으며 condidate configuration

Ex) 만약에 Commit를 눌렀으면 active configuration 

 

commit check: 설정값에 이상이 있는지 확인

commit: 설정값 적용 및 저장

commit at: 특정 시간에 commit수행

commit confirmed: 설정값을 commit수행하지만 10분 안에 다시 commit를 수행하지 않으면 이전 설정값으로 돌아갑니다. 

commit confirmed 1: 디폴트 값이 10분인데 이 값을 1분으로 변경

 

자세한 내용은 Juniper 공식 사이트 확인 부탁드립니다.

https://www.juniper.net/documentation/us/en/software/junos/cli/topics/topic-map/junos-configuration-commit.html

 

Commit the Configuration | Junos OS | Juniper Networks

The device configuration is saved using a commit model—a candidate configuration is modified as desired and then committed to the system. When a configuration is committed, the device checks the configuration for syntax errors, and if no errors are found

www.juniper.net

 

테스트해 보겠습니다. 

 

토폴로지

ge-0/0/1에 192.168.1.1/24 설정해 보겠습니다.

 

기본 설정 다 지우기

root> configure 
Entering configuration mode

[edit]
root# delete 
This will delete the entire configuration
Delete everything under this level? [yes,no] (no) yes 


[edit]
root# set system or
                 ^
syntax error.
root# set system root-authentication plain-text-password    
New password:
Retype new password:

[edit]
root# commit 
commit complete

[edit]
root# 

 

ge-0/0/0 192.168.1.1/24 설정하기

root# set interfaces ge-0/0/0 unit 0 family inet address 192.168.1.1/24 

root# run show interfaces terse | match ge-0/0 
ge-0/0/0                up    up
ge-0/0/1                up    up
ge-0/0/2                up    up

 

위에 보시면 commit를 누르지 않으면 설정값이 적용되지 않습니다. 

 

현재 어떤 명령어가 commit를 대기 중인지 확인하는 방법

root# show | compare 
[edit]
+  interfaces {
+      ge-0/0/0 {
+          unit 0 {
+              family inet {
+                  address 192.168.1.1/24;
+              }
+          }
+      }
+  }

[edit]
root# 

 

만약에 이 상태에서 exit로 밖으로 나가면 위에 설정값은 사라집니다.

root# exit 
The configuration has been changed but not committed
Exit with uncommitted changes? [yes,no] (yes)

 

no를 선택합니다

commit check은 commit 하기 전에 추가적으로 설정값이 맞는지 확인합니다. 만약에 commit check 없이 바로 commit 했을 때 설정값에 문제가 있다면 error메시지가 출력되면서 commit이 실패합니다. 

root# commit check 
configuration check succeeds

[edit]
root# 

 

commit 실행

root# commit 
commit complete

[edit]
root# exit 
Exiting configuration mode

root> show interfaces terse 
Interface               Admin Link Proto    Local                 Remote
ge-0/0/0                up    up
ge-0/0/0.0              up    up   inet     192.168.1.1/24  
gr-0/0/0                up    up
ip-0/0/0                up    up
lsq-0/0/0               up    up
lt-0/0/0                up    up
mt-0/0/0                up    up
sp-0/0/0                up    up
sp-0/0/0.0              up    up   inet    
                                   inet6   
sp-0/0/0.16383          up    up   inet    
ge-0/0/1                up    up
ge-0/0/2                up    up
dsc                     up    up
fti0                    up    up
fxp0                    up    up
gre                     up    up
ipip                    up    up
irb                     up    up
lo0                     up    up
lo0.16384               up    up   inet     127.0.0.1           --> 0/0
lo0.16385               up    up   inet     10.0.0.1            --> 0/0
                                            10.0.0.16           --> 0/0
                                            128.0.0.1           --> 0/0
                                            128.0.0.4           --> 0/0
                                            128.0.1.16          --> 0/0
lo0.32768               up    up  
lsi                     up    up
mtun                    up    up
pimd                    up    up
pime                    up    up
pp0                     up    up
ppd0                    up    up
ppe0                    up    up
st0                     up    up
tap                     up    up
vlan                    up    down

root> 

 

재부팅합니다. juniper는 commit 하면 명령어 적용과 저장이 됩니다.

재부팅해서 설정값이 유지되는지 확인해 보겠습니다. 

request system reboot

 

부팅이 완료될 때까지 기다립니다. 

root> request system reboot 
Reboot the system ? [yes,no] (no) yes 

                                                                               
*** FINAL System shutdown message from root@ ***                             

System going down IMMEDIATELY                                                  

                                                                               
Stopping cron.
.

 

부팅이 완료되면 Interface ge-0/0/0 ip를 확인해 보면 그대로 설정 값이 남아 있습니다. 

login: root
Password:
Last login: Sun Jun 23 09:53:36 on ttyu0

--- JUNOS 21.3R1.9 Kernel 64-bit XEN JNPR-12.1-20210828.6e5b1bf_buil
root@:~ # 
root@:~ # 
root@:~ # cli
root> 

root> show interfaces terse | match ge-0/0    
ge-0/0/0                up    up
ge-0/0/0.0              up    up   inet     192.168.1.1/24  
ge-0/0/1                up    up
ge-0/0/2                up    up

 

commit and-quit  - commit를 수행하고 configuration 모드에서 나갑니다.

root# set system host-name srx 

[edit]
root# commit and-quit 
commit complete
Exiting configuration mode

root@srx> 

 

commit confirmed - hostname firewall 변경하고 commit 수행합니다. 그리고 10분 안에 commit이 다시 한번 없으면 이전 상태로 돌아갑니다.

root@srx# set system host-name firewall 

[edit]
root@srx# commit ?
Possible completions:
  <[Enter]>            Execute this command
  activate             Activate a previously prepared commit
  and-quit             Quit configuration mode if commit succeeds
  at                   Time at which to activate configuration changes
  check                Check correctness of syntax; do not apply changes
  comment              Message to write to commit log
  confirmed            Automatically rollback if not confirmed
  peers-synchronize    Synchronize commit on remote peers
  prepare              Prepare for an upcoming commit activation
  |                    Pipe through a command
[edit]
root@srx# commit confirmed 
commit confirmed will be automatically rolled back in 10 minutes unless confirmed
commit complete

# commit confirmed will be rolled back in 10 minutes
[edit]
root@firewall# 

 

테스트를 위해서 10분을 기다립니다. 10분 안에 commit이 없으면 host-name은 이전 설정값은 srx로 변경됩니다.

 

10분안에 commit을 하지 않았기 때문에 설정값이 이전으로 rollback 되었음

Broadcast Message from root@srx                                                
        (no tty) at 10:25 UTC...                                               
                                                                               
Commit was not confirmed; automatic rollback complete.                                                                               


[edit]
root@srx# 

 

이번에는 테스트를 위해서 commit confirmed 1으로 하고 1분 안에 commit를 수행합니다. 

1분이 지나도 설정값이 rollback 되지 않습니다. 

root@srx# set system host-name firewall 

[edit]
root@srx# commit confirmed 1 
commit confirmed will be automatically rolled back in 1 minutes unless confirmed
commit complete

# commit confirmed will be rolled back in 1 minute
[edit]
root@firewall# commit 
commit complete

[edit]
root@firewall# 

 

commit at를 테스트해 보겠습니다

 

12:00:00에 commit를 수행합니다. 

[edit]
root@firewall# set system host-name srxsrx  

root@firewall# commit at 12:00:00    
configuration check succeeds
commit at will be executed at 2024-06-23 12:00:00 UTC
The configuration has been changed but not committed
Exiting configuration mode

root@firewall> 

 

이번에는 Rollback에 대해서 알아보겠습니다.

설정값 원복(rollback)

설정값을 기존 설정값으로 원복수행(rollback 후 반드시 commit를 수행해야 완료됨)

 

설정값을 commit 할 때마다 rollback이 생성됩니다.

 

rollback 0 - 마지막 commit이후 변경한 설정값을 초기화 

rollback 1 - 마지막 commit이전 설정값을 원복

rollback 2 - 2번째 전 commit이전 설정값으로 원복

 

commit 할 때마다 rollback으로 생성되는데 그 시점을 알고 싶을 때 확인 명령어

 

Possible completions:
  <revision>           Rollback to given configuration revision
  re0-1719138399-8     2024-06-23 10:26:40 UTC by root via cli 
  re0-1719138393-7     2024-06-23 10:26:36 UTC by root via cli commit confirmed, rollback in 1mins
  re0-1719138344-6     2024-06-23 10:25:47 UTC by root via other 
  re0-1719137740-5     2024-06-23 10:15:43 UTC by root via cli commit confirmed, rollback in 10mins
  re0-1719137710-4     2024-06-23 10:15:13 UTC by root via cli 
  re0-1719137288-3     2024-06-23 10:08:11 UTC by root via cli 
  re0-1719136430-2     2024-06-23 09:54:02 UTC by root via cli 
  re0-1719135583-1     2024-06-23 09:41:04 UTC by root via other 
[edit]
root@firewall# rollback revision    

 

rollback에 어떤 명령어가 포함되었는지 확인하는 방법

 

commit at 명령어가 포함되었습니다. 

root@firewall# show | compare rollback 0  
[edit system]
-  host-name firewall;
+  host-name srxsrx;

[edit]
root@firewall# 

 

테스트를 해보겠습니다

interface ge-0/0/0 ip 삭제합니다.

root@firewall# delete interfaces ge-0/0/0 

[edit]
root@firewall# commit 
commit complete

[edit]
root@firewall# exit 
Exiting configuration mode

root@firewall> 

root@firewall> show interfaces terse | match ge-0/0 
ge-0/0/0                up    up
ge-0/0/1                up    up
ge-0/0/2                up    up

 

현재 설정값이랑 commit전에 설정값 비교

root@firewall# show | compare rollback 1    
[edit]
-  interfaces {
-      ge-0/0/0 {
-          unit 0 {
-              family inet {
-                  address 192.168.1.1/24;
-              }
-          }
-      }
-  }

 

Rollback후 interface ge-0/0/0 ip주소 확인

root@firewall# rollback 1          
load complete

[edit]
root@firewall# commit 
commit complete

[edit]
root@firewall# run show interfaces terse | match ge-0/0 
ge-0/0/0                up    up
ge-0/0/0.0              up    up   inet     192.168.1.1/24  
ge-0/0/1                up    up
ge-0/0/2                up    up

[edit]
root@firewall# 

 

rollback 0에 의미

 

추가설정 없이 show | compare rollback 0 아무것도 없음

현재 설정이랑 rollback 0 설정값이 똑같음 

root@firewall# show | compare rollback 0 

[edit]

 

호스트 이름 변경 하지만 commit 하지 않음

 

host-name srx변경했지만 commit 하지 않았음 

현재 condidate-configuration은 hostname srx로 보이고 

현재 active-configuration(rollback 0) hostname firewall이기 때문에 

 

다른 부분을 아래에 표시해 줌. 

설정을 잘못해서 commit 하기 싫을 때 rollback 0를 누릅니다. 

또는 delete system host-name 사용해도 되지만, 명령어가 20줄이라면 rollback 0로 삭제하는 것이 편리합니다. 

root@firewall# set system host-name srx 

root@firewall# show | compare rollback 0 
[edit system]
-  host-name firewall;
+  host-name srx;

[edit]
root@firewall# 

 

rollback 숫자 없음 의미는 rollback 0를 의미

rollback 0은 commit이 필요 없음, 

 

이제 condidate-configuration이랑 active-configuration이랑 똑같아서 아래에 show | compare rollback 0를 입력하면 

아무것도 없음

root@firewall# rollback 
load complete  

[edit]
root@firewall# show | compare rollback 0 

[edit]
root@firewall# 

 

지금까지 [2024][Juniper SRX #15] commit and rollback 글을 읽어주셔서 감사합니다.

 

+ Recent posts