OpenWrt paigaldus x86 masinasse20. Jan '16

Sissejuhatus

OpenWrt on tüüpiliselt paigaldatud MIPS või ARM protsessoriga miniarvutitesse nagu Mikrotik, Gateworks, Compex ja OpenWrt on saadaval ka paljudele off-the-shelf marsruuteritele. Samas võib OpenWrt paigaldada ka tavalisele x86 riistvarale. Käesolevas blogipostituses on kirjeldatud kolm viisi OpenWrt paigalduseks x86 raual: otse füüsilisele, virtuaalmasinale VirtualBoxis ning virtuaalmasinale KVM-is. Esimene võrguliides on ühendatud sisevõrgu tsooni ning teine võrguliides küsib DHCP-ga aadressi väljapoolt.

Laadi alla OpenWrt kõvakettatõmmis ning paki see lahti:

wget https://downloads.openwrt.org/chaos_calmer/15.05.1/x86/generic/openwrt-15.05.1-x86-generic-combined-ext4.img.gz
gunzip openwrt-15.05.1-x86-generic-combined-ext4.img.gz

Füüsilisse masinasse paigaldus

Paigaldada saad näiteks olles teinud alglaadimise Ubuntu LiveCD-lt.

Kirjuta tõmmis esimesele kettale:

umount /dev/sda*
cat openwrt-15.05-x86-generic-combined-ext4.img > /dev/sda

Suurenda viimane ext4 failisüsteem ketta suuruseks.

echo "d\n2" | fdisk /dev/sda
resize2fs /dev/sda2

Tee taaskäivitus kõvakettalt.

VMware ESXi või Workstation

Kas nimeta fail ümber .raw lõpuliseks:

mv openwrt-15.05-x86-generic-combined-ext4.img \
    openwrt-15.05-x86-generic-combined-ext4.raw

Või teisenda VMware formaati ümber:

qemu-img convert \
    -f raw openwrt-15.05-x86-generic-combined-ext4.img \
    -O vmdk openwrt-15.05-x86-generic-combined-ext4.vmdk

VirtualBox

VirtualBox tahab kettatõmmist saada VirtualBoxile söödavas formaadis, mistõttu 1:1 kettatõmmis tuleb esmalt teisendada VDI failiks:

qemu-img convert \
    -f raw openwrt-15.05-x86-generic-combined-ext4.img \
    -O vdi openwrt-15.05-x86-generic-combined-ext4.vdi

Seejärel tuleb luua marsruuteri jaoks virtuaalmasin, selle jaoks piisab täiesti ühest tuumast ning 32MB mälust. Ülal teisendatud kettatõmmis määra esimeseks kõvakettaks.

KVM

Laadi alla KVM jaoks kohandatud tõmmis

wget https://downloads.openwrt.org/chaos_calmer/15.05.1/x86/kvm_guest/openwrt-15.05.1-x86-kvm_guest-combined-ext4.img.gz
gunzip openwrt-15.05.1-x86-kvm_guest-combined-ext4.img.gz

Käivitamiseks KVM virtuaalmasinas loo esmalt sild mille külge ühendada sisevõrk:

brctl addbr br0

Seejärel loo skript /etc/qemu-ifup millega virtuaalmasin silla külge ühendatakse:

#!/bin/bash
ifconfig $1 0.0.0.0 promisc up
brctl addif br0 $1

Tee see ka käivitatavaks:

chmod +x /etc/qemu-ifup

Seejärel käivita virtuaalmasin:

kvm -smp 2 -m 32 \
    -hda openwrt-15.05-x86-generic-combined-ext4.img \
    -netdev tap,script=/etc/qemu-ifup,id=lan -device e1000,netdev=lan \
    -netdev user,id=wan -device e1000,netdev=wan

Antud juhul esimene võrguliides ühendatakse br0 sillaga ning teisele võrguliidesele teeb QEMU ise NAT-i.

VirtualBox KVM OpenWrt VDI qemu-img