Tutorial como rodar o OpenWRT no QEMU

Rodar o OpenWRT no QEMU não é tafera muito difici (mas também não é simples, vai entender…).

Antes de mais nada, considero que você está em uma máquina com alguma distribuição Linux (Ubuntu, Fedora, OpenSUSE…).

Primeiro instale o pacote qemu-system-arm (qemu-arm no caso do OpenSUSE), no caso do Ubuntu:

    $ apt install qemu-system-arm

Agora, baixe os pacotes root.ext4.gz e zImage de https://downloads.openwrt.org/releases/19.07.4/targets/armvirt/32/ (versão 19.07.4, arquitetura armvirt-32)

Você precisa descompactar o arquivo root.ext4.gz, antes de continuar:

$ gunzip root.ext4.gz

Para rodar a imagem, basta baixar o script qemustart: https://raw.githubusercontent.com/openwrt/openwrt/openwrt-19.07/scripts/qemustart

Dê permissão de execução a ele:

$ chmod +x qemustart

Agora edite o arquivo /etc/qemu/bridge.conf e adicione as duas linhas abaixo:

allow br-lan
allow br-wan

Edite também o próprio script qemustart antes de executá-lo pela primeira vez. Adicione a linha && do_setup \ a linha 341, o resultado deve ser algo como abaixo:

parse_args "$@" \
        && do_setup \
        && check_setup \
        && start_qemu

Agora, basta rodar o comando e você deve “cair” no console do OpenWRT:

sudo ./scripts/qemustart armvirt 32 --machine virt,highmem=off --kernel openwrt-19.07.4-armvirt-32-zImage --rootfs openwrt-19.07.4-armvirt-32-root.ext4 --network

NOTA: Essa configuração habilita o acesso SSH e a LuCI pelo endereço 192.168.1.1, mas não permite que o OpenWRT acesse a internet. Ainda estou estudando uma maneira de fazer isso.

2 curtidas