I’m currently trying to create an automated platform to manage new installations of RouterOS and set custom configurations on each device (The script generation is done with external logic). I would like to know if it’s possible to use different tools (preferably via CLI) to make new installations of RouterOS and customize default configuration scripts. After using Wireshark, I noticed that Netinstall is using BootP, DHCP and TFTP, but I don’t know which steps to follow in order to replicate the same process.
Does someone here know how to make a solution like this? If it’s possible, I would appreciate some help.
I was talking about, for example, create a solution on Linux in which you could make Netinstall process via CLI or Bash Script using generic TFTP/BOOTP servers.
EDIT: I was able to configure a BOOTP server & TFTP server and replicate netinstall operations in terms of assigning IPs and transfering the vmlinux image to the router. However, I still don’t know what does the MT Netinstall Server does. After using Wireshark, I noticed that it uses UDP port 5000 to transfer the NPK file, the default script file and other configuration with a strange structure of messages (I tried decoding the pcap packages as TFTP with no success so I assume that in this step it’s not used). Here I copy some examples in case you know what kind of protocol is:
..',J...B...........OFFR
..',J...B.............',J...B.............',J...B.............',J...B.............',J...B.....).....FILE
routeros-mipsbe-6.45.7.npk
12060310
..',J...B.....).....FILE
routeros-mipsbe-6.45.7.npk
12060310
..',J...B.....).....FILE
routeros-mipsbe-6.45.7.npk
12060310
..',J...B.....).....FILE
routeros-mipsbe-6.45.7.npk
12060310
..',J...B..................... ...routeros-mipsbe..f-.sd.]..............stable......mips..B...RouterOS for mipsbe RouterBOARDs, includes all supported features
........".....ipv6..............................$...system...........f-.sd.]..................mips..,...Main package with basic services and drivers.
-----------------------------------AFTER TRANSFERING FILE NPK FILE--------------------
5.......................................>...........................................................G.........................d.].f-.sd.].... ...../var/pdb/system/crcboot/kernel 1963032758
boot
. 2
.'|. .D...7K....:...vg..D.4.
-----------------------------------AFTER THIS, IT COPIES DEFAULT SCRIPT CONTENT--------------------
......I..',J...B.......w v ..',J...B.......w v ..',J...B.......x w FILE
autorun.scr
6329
..',J...B.......x w FILE
autorun.scr
6329
From your message about getting tftp running, are you saying that with bootp and tftp set up I could replicate the ‘most important’ bits of netinstall.exe from a linux machine? I don’t mind forcing a factory reset via reset button if that steps needed. You write about transferring the NPK file and the VMlinux file… I thought there was only the NPK, so I’m confused.
We’re windows-free here, I’ve just had to resort to borrowing a windows laptop to upgrade my hAP-lite
David
Ps, for what it’s worth, netinstall via wine on my linux box(es) just sits there saying,
bootp req received
bootp recv bytes: 300
client: 4C:5E:0C:F0:35:49
bootp req received
bootp recv bytes: 300
client: 4C:5E:0C:F0:35:49
bootp req received
bootp recv bytes: 300
client: 4C:5E:0C:F0:35:49
Other runs throw in ‘reply not sent’ or something similar, but the result is the same, it’s non-functional.