routeros-qemu-chr
QEMU에서 MikroTik RouterOS CHR 실행
MikroTik RouterOS CHR은 테스트 및 개발을 위한 완전한 기능을 갖춘 가상 라우터를 제공하지만, 설정에는 QEMU 옵션, VirtIO 드라이버 및 펌웨어 구성을 탐색해야 합니다. 이 스킬은 가속화, 적절한 VirtIO 설정 및 REST API 통합을 포함한 CHR 실행에 대한 완전한 가이드를 제공합니다.
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“routeros-qemu-chr”。 KVM 가속 및 포트 9180에서 REST API로 CHR 부팅
预期结果:
QEMU가 하드웨어 가속으로 시작됩니다. RouterOS가 약 5초 내에 부팅됩니다. http://127.0.0.1:9180/에서 HTTP 200 응답으로 준비 상태가 확인됩니다. REST API는 admin 자격 증명으로 http://127.0.0.1:9180/rest/에서 액세스 가능합니다.
正在使用“routeros-qemu-chr”。 GitHub Actions Ubuntu 러너에서 KVM 활성화
预期结果:
/etc/udev/rules.d/99-kvm4all.rules에 udev 규칙이 생성되었습니다. KVM 장치 권한이 0666으로 업데이트되었습니다. QEMU가 하드웨어 가속을 위해 /dev/kvm을 성공적으로 엽니다. 부팅 시간이 약 30초에서 약 5초로 단축되었습니다.
正在使用“routeros-qemu-chr”。 RouterOS 서비스를 위한 포트 포워딩 구성
预期结果:
호스트 포트 매핑: 9180→80 (REST API), 9122→22 (SSH), 9728→8728 (API), 9729→8729 (API-SSL), 9291→8291 (WinBox). 로컬호스트 포트를 통해 호스트에서 서비스 액세스 가능.
安全审计
中风险Static analysis detected 347 potential security patterns across 5 files. After semantic evaluation, all findings are FALSE POSITIVES. The skill uses external commands for QEMU invocation, which is the core purpose of this documentation. Network access is limited to mikrotik.com download URLs. No malicious intent or actual security vulnerabilities confirmed.
中风险问题 (2)
低风险问题 (4)
风险因素
🌐 网络访问 (2)
📁 文件系统访问 (2)
质量评分
你能构建什么
CI에서 자동화된 RouterOS REST API 테스트
RouterOS CHR을 CI 테스트 픽스처로 실행하여 REST API 호출을 검증하고, RAML 스키마를 생성하며, 수동 라우터 설정 없이 /app YAML 구성을 테스트합니다.
개발 및 학습 환경
무료 라이선스 CHR 인스턴스를 부팅하여 프로덕션 하드웨어 없이 RouterOS 기능을 탐색하고, 방화벽 규칙을 테스트하며, 브리징을 실험하고, 네트워킹 개념을 학습합니다.
멀티 아키텍처 테스트
QEMU를 사용하여 적절한 펌웨어 (x86용 SeaBIOS, ARM용 UEFI) 및 가속 옵션으로 x86_64 및 aarch64 아키텍처 전반에서 RouterOS 구성을 테스트합니다.
试试这些提示
QEMU에서 RouterOS CHR을 설정할 수 있도록 도와주세요. 최신 안정 이미지를 다운로드하고 KVM 가속 및 REST API용 포트 9180으로 부팅해야 합니다.
RouterOS CHR을 다운로드하고, 사용 가능한 경우 KVM으로 부팅하고 (TCG로 폴백), 부팅을 대기한 다음 REST API 테스트를 실행하는 GitHub Actions 워크플로우를 작성해 주세요.
macOS Apple Silicon에서 RouterOS CHR aarch64를 부팅하도록 QEMU를 구성해 주세요. UEFI pflash 설정과 명시적 virtio-blk-pci 장치 구성을 포함해 주세요.
RouterOS CHR이 빈 화면과 함께 부팅에 실패합니다. 디스크 이미지가 aarch64에서 if=virtio를 사용합니다. 어떤 문제가 있을 수 있으며 어떻게 수정하나요?
最佳实践
- aarch64에서 묵시적 부팅 실패를 방지하기 위해 if=virtio 약어 대신 명시적 -device virtio-blk-pci를 사용하세요
- KVM 활성화 전에 /dev/kvm 존재 여부가 아닌 쓰기 가능 여부를 확인하고, KVM을 사용할 수 없는 경우 항상 TCG로 원활하게 폴백하세요
- localhost IP를 하드코딩하는 대신 tcp::9180-:80과 같은 포트 포워딩 패턴을 사용하여 구성을 휴대 가능하고 재사용 가능하게 만드세요
避免
- aarch64 아키텍처에서 if=virtio를 사용하지 마세요 - RouterOS가 지원하지 않는 MMIO로 해석되어 묵시적 부팅 실패를 초래합니다
- KVM 권한 확인을 건너뛰지 마세요 - /dev/kvm이 존재하지만 읽을 수 없을 수 있으며, QEMU는 권한 오류 시 TCG로 묵시적으로 폴백하지 않습니다
- 동시 CI 빌드에서 git pull && git push를 사용하지 마세요 - 경쟁 조건으로 인한 push 거부를 피하기 위해 retry-with-rebase 패턴을 사용하세요
常见问题
무료 CHR 라이선스의 속도 제한은 무엇인가요?
HVF 가속에서 QEMU 게스트 에이전트가 작동하지 않는 이유는 무엇인가요?
CHR 부팅 시 SeaBIOS와 UEFI 중 어떻게 선택하나요?
aarch64 CHR이 if=virtio로 부팅 중 멈추는 이유는 무엇인가요?
여러 CHR 인스턴스를 동시에 실행할 수 있나요?
어떤 가속 방법을 사용해야 하나요?
开发者详情
文件结构