Convert an ONIE S4810-ON to an FTOS S4810P

Notice: Page may contain affiliate links for which we may earn a small commission through services like Amazon Affiliates or Skimlinks.

fohdeesha

Kaini Industries
Nov 20, 2016
2,789
3,168
113
33
fohdeesha.com
A lot of S4810-ON models have flooded ebay lately, these were designed to support ONIE and boot into cumulus or other whitebox NOS distros. As these are a pain in the ass to get images of (and moreso license), it would be nice if they could just run Dell's own full featured FTOS like it's sister switch, the S4810P. The following guide will tell you how to do just that: S4810-ON - Fohdeesha Docs

Thanks to @is39 for lending me access to a couple S4810-ON models to fine tune the guide with
 
Last edited:

blunden

Active Member
Nov 29, 2019
560
183
43
Awesome!

I forsee a sharp increase in demand soon, and a price increase once the sellers become aware. :D
 

BeefStu

New Member
Jan 21, 2024
5
0
1
I love to see this! How are these on power draw? I miss having cheap electricity :(
 

fohdeesha

Kaini Industries
Nov 20, 2016
2,789
3,168
113
33
fohdeesha.com
Honestly, I don't think so. Arista 7050SX are cheaper and more readily available
yeah I certainly wouldn't spend a few hundred dollars on one of these now, there's cheaper Trident based switches out there. This is mostly for the people who already have one laying around doing nothing, or bought one of the "No OS" ebay listings a month or two ago not realizing it's the ONIE version and you couldn't just slap FTOS on it
 
  • Like
Reactions: blunden

ltoledo

New Member
May 31, 2024
2
1
3
I am having an issue when following the guide:
After netbooting FTOS, I cannot get "upgrade system tftp" commands to work. TFTP server doesn't seem to receive the file request, and after a while the switch shows the following messages:

Dell#upgrade boot tftp://192.168.1.10/ftos-full-uboot-1.2.0.5.bin
Jun 12 02:25:36 %STKUNIT0-M:CP %TFTP-3-TFTP_TIMEOUT: Transfer Timed Out.
% Error: TFTP service task reported error status.
% Error: Upgrade Boot image failed.


After many tries, sometimes TFTP server does receive the file requests, but fails to transfer the file and generates these logs (repeatedly):

Connection received from 192.168.1.55 on port 61231 [11/06 15:14:59.451]
Read request for file <ftos-full-uboot-1.2.0.5.bin>. Mode octet [11/06 15:14:59.452]
OACK: <blksize=1024,> [11/06 15:14:59.452]
Using local port 64762 [11/06 15:14:59.452]
TIMEOUT waiting for Ack block #0 [11/06 15:15:14.500]


I tried with 2 switches, using 2 PC's as TFTP servers, and I also tried to copy the file to flash instead of upgrading, but it looks like tftp client in FTOS fails to request the file.

May it be something missing?
 
Last edited:

fohdeesha

Kaini Industries
Nov 20, 2016
2,789
3,168
113
33
fohdeesha.com
I am having an issue when following the guide:
After netbooting FTOS, I cannot get "upgrade system tftp" commands to work. TFTP server doesn't seem to receive the file request, and after a while the switch shows the following messages:

Dell#upgrade boot tftp://192.168.1.10/ftos-full-uboot-1.2.0.5.bin
Jun 12 02:25:36 %STKUNIT0-M:CP %TFTP-3-TFTP_TIMEOUT: Transfer Timed Out.
% Error: TFTP service task reported error status.
% Error: Upgrade Boot image failed.


After many tries, sometimes TFTP server does receive the file requests, but fails to transfer the file and generates these logs (repeatedly):

Connection received from 192.168.1.55 on port 61231 [11/06 15:14:59.451]
Read request for file <ftos-full-uboot-1.2.0.5.bin>. Mode octet [11/06 15:14:59.452]
OACK: <blksize=1024,> [11/06 15:14:59.452]
Using local port 64762 [11/06 15:14:59.452]
TIMEOUT waiting for Ack block #0 [11/06 15:15:14.500]


I tried with 2 switches, using 2 PC's as TFTP servers, and I also tried to copy the file to flash instead of upgrading, but it looks like tftp client in FTOS fails to request the file.

May it be something missing?
Whatever management IP you assigned to the management port in ftos, please try pinging it from the computer running tftp. If the ping works, then it's a high chance of being an issue with your tftp setup. If the simple ping fails, then ensure you actually assigned an IP to the management port in ftos as the guide instructs, and ensure the management port is linked up. There's a chance it could be a bug I ran into, where the offset between the u-boot mac address and the system burnt in mac address did not have the required offset and needed to be fixed. Please run the following and send me the output:

in the bootloader, run "printenv" and find the line ethaddr=, send me that. then netboot into ftos again, and once inside it, run the following and send the output:

enable
show system

For some reason (didn't have time to debug) management connections never worked correctly unless there was an offset of 2 between u-boot's environment mac and BSD's (FTOS) kernel mac (stack mac). My guess is the BSD kernel/FTOS when fully booted uses the stack mac as well as the MAC address one address higher for various unix interfaces underneath, so it will use 30 and 31 in this case, so if u-boot had either of those assigned, there will be overlap (even though u-boot is supposed to drop anything once the kernel boots, but who knows). For example the following works correctly:

Code:
#in FTOS uboot bootloader:
ethaddr=00:01:E8:D8:3A:32

in FTOS:
Dell(conf)#do show system

Stack MAC                      : 00:01:e8:d8:3a:30
Burned In MAC                  : 00:01:e8:d8:3a:30
If they're the same, or only 1 apart, it just doesn't work right. The uboot mac should always be two higher than the stack/chassis mac reported by FTOS. The fix is to get your stack mac with the command above in ftos, then in uboot, set the uboot mac to two higher like:

Code:
setenv ethaddr 00:01:E8:D8:3A:32
saveenv
reset
 
Last edited:
  • Like
Reactions: klui

ltoledo

New Member
May 31, 2024
2
1
3
Whatever management IP you assigned to the management port in ftos, please try pinging it from the computer running tftp. If the ping works, then it's a high chance of being an issue with your tftp setup. If the simple ping fails, then ensure you actually assigned an IP to the management port in ftos as the guide instructs, and ensure the management port is linked up. There's a chance it could be a bug I ran into, where the offset between the u-boot mac address and the system burnt in mac address did not have the required offset and needed to be fixed. Please run the following and send me the output:

in the bootloader, run "printenv" and find the line ethaddr=, send me that. then netboot into ftos again, and once inside it, run the following and send the output:

enable
show system

For some reason (didn't have time to debug) management connections never worked correctly unless there was an offset of 2 between u-boot's environment mac and BSD's (FTOS) kernel mac (stack mac). My guess is the BSD kernel/FTOS when fully booted uses the stack mac as well as the MAC address one address higher for various unix interfaces underneath, so it will use 30 and 31 in this case, so if u-boot had either of those assigned, there will be overlap (even though u-boot is supposed to drop anything once the kernel boots, but who knows). For example the following works correctly:

Code:
#in FTOS uboot bootloader:
ethaddr=00:01:E8:D8:3A:32

in FTOS:
Dell(conf)#do show system

Stack MAC                      : 00:01:e8:d8:3a:30
Burned In MAC                  : 00:01:e8:d8:3a:30
If they're the same, or only 1 apart, it just doesn't work right. The uboot mac should always be two higher than the stack/chassis mac reported by FTOS. The fix is to get your stack mac with the command above in ftos, then in uboot, set the uboot mac to two higher like:

Code:
setenv ethaddr 00:01:E8:D8:3A:32
saveenv
reset
That was it!

MAC from bootloader was way different than MAC from FTOS. After setting the expected MAC in bootloader (FTOS MAC + 2), the files were successfully loaded.

Thank you very much
 
  • Love
Reactions: fohdeesha

fohdeesha

Kaini Industries
Nov 20, 2016
2,789
3,168
113
33
fohdeesha.com
That was it!

MAC from bootloader was way different than MAC from FTOS. After setting the expected MAC in bootloader (FTOS MAC + 2), the files were successfully loaded.

Thank you very much
Great! Although that means I wasn't imagining things in my own lab and this is an actual issue, so I need to add a section about this to the guide, argh