Комментарии 18
В основном этот гайд пригодится тем кто имел дело и привык работать с RouterOS.
Ну например если у вас вся инфраструктура построенна на микротиках, вы наверняка захотите иметь единый и стандартизированный интерфейс на всех устройвах, ну или если вы просто захотите сделать выходной узел для вашего домашнего mikrotik-роутера.
Так же RouterOS из коробки поддерживает кучу полезных функций и единый интерфейс к ним, которые сразу же можно использовать не углубляясь в тонкости настройки аналогичных демонов под linux.
Практически любой сетевой вендор сейчас предоставляет свои решения в виртуализированном виде (при чем, во многих случаях, НЕ дешевле аналогичного по х-кам железного устройства).
К примеру, те же корпоративные VPN, завязанные на внутренние каталоги юзеров. Далеко не всегда эту часть взять и перенести на то, что предоставляется провайдером облака.
sudo yum install -y qemu-kvm libvirt libvirt-python python-virtinst libguestfs-tools virt-install
sudo systemctl enable libvirtd
sudo systemctl start libvirtd
sudo reboot
sudo mkdir /mnt/storage/mikrotik
cd /mnt/storage/mikrotik
sudo wget https://download.mikrotik.com/routeros/6.41.3/chr-6.41.3.img.zip
sudo unzip chr-*.img.zip
ls -la chr-*.img
-rw-r--r--. 1 root root 134217728 мар 12 12:54 chr-6.41.3.img
sudo lvcreate -L134217728b ba_server -n dude
sudo dd if=/mnt/storage/mikrotik/chr-6.41.3.img of=/dev/ba_server/dude bs=2M
sudo cp /etc/sysconfig/network-scripts/ifcfg-{enp2s0,br0}
sudo vim /etc/sysconfig/network-scripts/ifcfg-enp2s0
DEVICE=enp2s0
ONBOOT=yes
BRIDGE=br0
sudo vim /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.133.280
NETMASK=255.255.255.0
GATEWAY=192.168.133.1
DNS1=192.168.133.1
DEVICE=br0
ONBOOT=yes
ZONE=public
sudo systemctl restart network
sudo virt-install --connect qemu:///system --name='dude' --description='dude' --ram=512 --vcpus=1 --network bridge=br0,model=e1000 --disk path=/dev/ba_server/dude,bus=ide --os-type='other' --os-variant='generic' --nographics --hvm --boot hd --autostart
https://wiki.mikrotik.com/wiki/Manual:CHR#CHR_Licencing
тут вот пишут, что CHR совсем по другому лицензируются…
У меня вот есть два CHR в Германии и Японии, через них я маршрутизирую свой домашний трафик по нужным мне правилам (например, до Кореи у меня трафик по умолчанию бегает через Америку, а до Японии — напрямую, поэтому я завернул трафик в Корею через CHR который в Японии).
Я конечно понимаю что все можно сделать на какой-нибудь чистой убунте/дебиане/центоси, но лично мне привычнее и удобнее поднять EoIP туннели парой кликов, ну и просто отсутствие зоопарка разных осей на маршрутизаторах (дома у меня Mikrotik).
Я не говорю что все должны так делать, это может быть очень не правильно и за это может быть мне стоит оторвать руки =)
С одной стороны баян страшный, но мысль про tmpfs здравая
С другой стороны, например я перед ребутом, но после раскатки образа еще и прописываю внутрь скрипт, который меняет пароль администратора и прописывает правильные IP адреса и шлюзы, иначе можно потом и не подключиться, а не все облака дают доступ к консоли
например так (примем что сеть это eth0)
mount -o loop,offset=33554944 chr.img /mnt && \
ADDRESS=ip addr show eth0 | grep global | cut -d' ' -f 6 | head -n 1
&& \
GATEWAY=ip route list | grep default | cut -d' ' -f 3
&& \
echo "/ip address add address=$ADDRESS interface=[/interface ethernet find where name=ether1]
/ip route add gateway=$GATEWAY
/ip service disable telnet
/user set 0 name=root password=пароль
" > /mnt/rw/autorun.scr && \
umount /mnt
Но совершенно точно работает с VIRTIO и IDE.
Хорошая первоапарельская шутка. Особенно sync
в конце, который записывает данные старой файловой системы поверх новой. Частично.
Сделал все по инструкции, Ubuntu 16.04.
На строке echo 1 > /proc/sys/kernel/sysrq машина ушла в ребут.
Вторая строка, видимо, уже не была воспринята: echo b > /proc/sysrq-trigger
Получил после ребута:
Booting from Hard Disk
Loading system with initrd
ERROR: no system package found!
Kernel panic - not syncing: Attempting to klll init!
Rebooting in 1 seconds...
Простой способ установить Mikrotik RouterOS в любом облаке