개요
안녕하세요 HiDAN 입니다!
오늘은 저번에 설치한 PNETLab 서버에서 구동하기 위한 가상 라우터의 이미지를 ishare2로 다운로드 받는 방법에 대해 알아보겠습니다.
2025.03.31 - [IT/Server] - PNETLab 베어메탈 설치하기
PNETLab 베어메탈 설치하기
개요안녕하세요 HiDAN 입니다!! 요새 업무가 너무 바빠서 오랜만에 포스팅을 작성하네요😂저번에 EVE-NG를 베어메탈로 설치하는 방법에 대해 설명 드렸는데요. 최근 PNETLab이라는 솔루션을 알게
hidan.tistory.com
🚀 ishare2 란?
ishere2는 네트워크 에뮬레이터에서 이미지를 쉽게 다운로드하고 관리할 수 있도록 도와주는 툴 입니다.
ishere2는 qemu, dynamips, bin/iol 및 docker 이미지를 다운로드할 수 있습니다.
더 자세한 내용은 ishare2 깃허브 페이지에서 참고해주세요.
https://github.com/ishare2-org/ishare2-cli?tab=readme-ov-file
⚙️ ishare2 설치하기
ishare2는 스크립트로 간편하게 설치할 수 있는 명령어를 제공하고 있습니다.
root 사용자 또는 sudo 명령어를 사용해서 실행해주세요.
wget -O /usr/sbin/ishare2 https://raw.githubusercontent.com/ishare2-org/ishare2-cli/main/ishare2 && chmod +x /usr/sbin/ishare2 && ishare2
명령어를 입력하면 자동으로 설치가 진행됩니다.
설치 과정 중에 다음과 같이 여러 옵션을 선택할 수 있네요.
저는 모두 기본으로 설정했습니다.
설치가 완료되면 아래와 같이 ishare2의 CLI 명령어 구문에 대해 안내가 됩니다.
🎠 ishare2 사용하기
먼저 설치할 이미지를 검색해보겠습니다.
ishare2 search <검색할_이미지>
이미지 이름으로 검색하면 관련 있는 모든 이미지가 출력 됩니다.
root@pnetlab:~# ishare2 search vios
=============================
Available QEMU images
=============================
ID NAME SIZE
-- ---- ----
954 vios-15.5.3M 122.0 MiB
955 vios-adventerprisek9-m-15.4-1.3.0-181 116.0 MiB
956 vios-adventerprisek9-m-15.6.2T 122.5 MiB
957 vios-adventerprisek9-m.SPA.154-3M8 116.4 MiB
958 vios-adventerprisek9-m.SPA.159-3.M2 46.9 MiB
959 vios-adventerprisek9-m.SPA.159-3.M3 54.6 MiB
960 vios-adventerprisek9-m.SPA.159-3.M3 54.2 MiB
961 vios-adventerprisek9-m.SPA.159-3.M4 54.1 MiB
962 vios-adventerprisek9-m.SPA.159-3.M6 54.2 MiB
963 vios-adventerprisek9-m.spa.158-3.m2 54.0 MiB
964 vios-adventerprisek9-m.spa.159-3.m2 47.4 MiB
965 vios-adventerprisek9-m.vmdk.SPA.157-3.M3 49.8 MiB
966 viosl2-15.2.4.55e 92.4 MiB
967 viosl2-adventerpriseK9-M_152_May_2018 102.2 MiB
968 viosl2-adventerprisek9-m-15.2.4055 92.4 MiB
969 viosl2-adventerprisek9-m-v152_6_0_81_e-20190423 39.2 MiB
970 viosl2-adventerprisek9-m.SSA.high_iron_20180619 42.5 MiB
971 viosl2-adventerprisek9-m.ssa.high_iron_20190423 42.9 MiB
972 viosl2-adventerprisek9-m.ssa.high_iron_20200929 85.6 MiB
9 QEMU images found for the term: "vios"
============================
Available IOL images
============================
ID NAME SIZE
-- ---- ----
No IOL images found for the term: "vios"
=================================
Available DYNAMIPS images
=================================
ID NAME SIZE
-- ---- ----
No DYNAMIPS images found for the term: "vios"
또는 이미지 타입으로도 검색 할 수도 있습니다.
root@pnetlab:~# ishare2 search qemu
ID NAME SIZE
-- ---- ----
1 128T-522 2.5 GiB
2 6wind-cgnat-ee-x86_64-2.2.6 528.6 MiB
3 6wind-router-ee-x86_64-2.2.6 528.3 MiB
4 6wind-vrouter-tr-ae-x86_64-v3.0.4 771.4 MiB
5 6wind-vrouter-tr-ae-x86_64-v3.0.5.m1 712.2 MiB
6 6wind-vrouter-tr-ae-x86_64-v3.0.6 720.1 MiB
7 6wind-vrouter-tr-ae-x86_64-v3.0.7 720.7 MiB
...
1282 xrv9k-fullk9-7.9.2 1.6 GiB
1283 xrv9k-fullk9-x-6.6.3 1.3 GiB
1284 xrv9k-fullk9-x-7.0.2 1.3 GiB
1285 xrv9k-fullk9-x-7.1.1 1.3 GiB
1286 xrv9k-fullk9-x-7.1.2 1.3 GiB
1287 xrv9k-fullk9-x-7.2.1 1.3 GiB
1288 xrv9k-fullk9-x-7.6.1 1.5 GiB
1289 zabbix-3.0 3.6 GiB
1290 zabbix-3.4 683.3 MiB
이미지의 이름과 타입을 동시에 사용해서 검색 범위를 좁힐 수 있습니다.
root@pnetlab:~# ishare2 search qemu vios
=============================
Available QEMU images
=============================
ID NAME SIZE
-- ---- ----
954 vios-15.5.3M 122.0 MiB
955 vios-adventerprisek9-m-15.4-1.3.0-181 116.0 MiB
956 vios-adventerprisek9-m-15.6.2T 122.5 MiB
957 vios-adventerprisek9-m.SPA.154-3M8 116.4 MiB
958 vios-adventerprisek9-m.SPA.159-3.M2 46.9 MiB
959 vios-adventerprisek9-m.SPA.159-3.M3 54.6 MiB
960 vios-adventerprisek9-m.SPA.159-3.M3 54.2 MiB
961 vios-adventerprisek9-m.SPA.159-3.M4 54.1 MiB
962 vios-adventerprisek9-m.SPA.159-3.M6 54.2 MiB
963 vios-adventerprisek9-m.spa.158-3.m2 54.0 MiB
964 vios-adventerprisek9-m.spa.159-3.m2 47.4 MiB
965 vios-adventerprisek9-m.vmdk.SPA.157-3.M3 49.8 MiB
966 viosl2-15.2.4.55e 92.4 MiB
967 viosl2-adventerpriseK9-M_152_May_2018 102.2 MiB
968 viosl2-adventerprisek9-m-15.2.4055 92.4 MiB
969 viosl2-adventerprisek9-m-v152_6_0_81_e-20190423 39.2 MiB
970 viosl2-adventerprisek9-m.SSA.high_iron_20180619 42.5 MiB
971 viosl2-adventerprisek9-m.ssa.high_iron_20190423 42.9 MiB
972 viosl2-adventerprisek9-m.ssa.high_iron_20200929 85.6 MiB
이미지를 다운로드 받기 위해선 아래와 같이 pull 명령어를 사용하면 됩니다.
ishare2 pull 명령어에 type과 search에서 찾을 수 있는 id를 입력합니다.
ishare2 pull <type> <id>
저는 위에서 조회한 vios 이미지 중, ID 961를 다운로드 해보겠습니다.
root@pnetlab:~# ishare2 pull qemu 961
[!] IMAGE INFO
- Image Name : vios-adventerprisek9-m.SPA.159-3.M4
- Image Size : 54.1 MiB
- Image Type : QEMU
- Image ID : 961
- Image path : /opt/unetlab/addons/qemu/vios-adventerprisek9-m.SPA.159-3.M4
- Using host : https://drive.labhub.eu.org
[!] DOWNLOADING IMAGE
/opt/unetlab/addons/qemu/vios-adv 100%[===========================================================>] 54.15M 9.78MB/s in 6.9s
[+] DOWNLOAD COMPLETED!
[-] Extracting: vios-adventerprisek9-m.SPA.159-3.M4.tgz file...
[+] Extracted: /opt/unetlab/addons/qemu/vios-adventerprisek9-m.SPA.159-3.M4. Image ready to use.
[-] Fixing permissions...
[+] Fix permissions command has been executed correctly
다운로드 경로를 확인해보시면, 이미지가 잘 받아진 것을 볼 수 있습니다.
root@pnetlab:~# ls /opt/unetlab/addons/qemu/vios-adventerprisek9-m.SPA.159-3.M4
virtioa.qcow2
ishare2 installed 명령어를 통해서도 설치된 이미지를 확인할 수 있습니다.
root@pnetlab:~# ishare2 installed qemu
=====================================
Showing installed QEMU images
=====================================
/opt/unetlab/addons/qemu/
├── [drwxr-xr-x 4.0K] vios-adventerprisek9-m.SPA.159-3.M4
│ └── [-rwxr-xr-x 55M] virtioa.qcow2
└── [drwxr-xr-x 4.0K] viosl2-adventerprisek9-m.ssa.high_iron_20200929
└── [-rwxr-xr-x 86M] virtioa.qcow2
2 directories, 2 files
추가로 저는 Juniper 제조사의 장비를 좋아하기 때문에 vmx 이미지도 다운로드 받았습니다.
root@pnetlab:~# ishare2 installed qemu all
=====================================
Showing installed QEMU images
=====================================
/opt/unetlab/addons/qemu/
├── [drwxr-xr-x 4.0K] vios-adventerprisek9-m.SPA.159-3.M4
│ └── [-rwxr-xr-x 0] vios-adventerprisek9-m.SPA.159-3.M4.tgz
├── [drwxr-xr-x 4.0K] vmxvcp-23.2R1-S1.6-domestic-VCP
│ ├── [-rwxr-xr-x 1.1G] virtioa.qcow2
│ ├── [-rwxr-xr-x 192K] virtiob.qcow2
│ └── [-rwxr-xr-x 10M] virtioc.qcow2
└── [drwxr-xr-x 4.0K] vmxvfp-23.2R1-S1.6-domestic-VFP
└── [-rwxr-xr-x 8.3G] virtioa.qcow2
3 directories, 5 files
이미지 다운로드 완료 시, 자동으로 permission fix 시행이 되기 때문에 별도로 시행할 필요도 없습니다.
PNETLab 랩에서 ADD NODE를 클릭하시면, 아래와 같이 다운로드한 장비의 템플릿을 선택할 수 있습니다👍
그리고 템플릿을 선택하시면, 각 장비의 OS 버전 이미지를 선택할 수 있습니다.
저는 Name이나 Image 버전만 필요에 따라 수정하고, 나머지 설정은 디폴트 설정으로 생성했습니다.
vMX를 몇 개 생성하고 마우스로 링크를 뚝딱뚝딱 연결해서 장비를 실행시켰습니다.
잠시 부팅을 기다리고 장비에 접속해보니 정상적으로 실행이 되었습니다.
참고로 vMX 장비의 경우, Auto Image Upgrade 관련 로그가 계속 출력되고 있는데요.
로그에 나오는 delete chassis auto-image-upgrade 명령어를 넣고 commit하시면 더 이상 출력 되지 않습니다.
마무리
지금까지 PNETLab에서 라우터 이미지를 검색하고 다운받는 방법에 대해 알아보았는데요.
PNETLab과 ishare2를 이용하기 전에는 매번 이미지를 다운로드 받고, 설정하는데 굉장히 애를 먹었습니다😂
하지만 이렇게 편하게 이미지 다운로드와 설정이 가능한 프로젝트가 있다니 굉장히 좋더라구요😍👍
네트워크 가상화 에뮬레이터에 관심이 있지만 접근하기 어려웠던 분들도 한번 도전해보시면 좋겠습니다.
감사합니다!