ASRock Rack has created the first AM4 socket server boards, X470D4U, X470D4U2-2T

And would you mind sharing?

Any chance you can DM a link to the bios file?

Did you need to change any specific settings in the BIOS? Or just defaults?

The documentation is really terrible for this board. Thereā€™s a whole load of stuff about it thatā€™s not explained at all in the manual. A few things Iā€™ve been trying to figure out recently:

1:
Iā€™ve been trying to figure out what way the IPMI LAN bond works, which has been discussed above. By default the LAN port near the BMCā€™s LAN port are bonded in an active backup configuration. If Iā€™m only to plug an ethernet cable into the LAN port near the BMCā€™s LAN port, I can access the IPMI webui which makes sense.

Then, if I disable the network bond in the WebUI via Settings -> Network -> Network Bond Configuration and disable the bond, I come up with the following table. (This is for the X470D4U, not the 10G version)

Lan Port Connected IPMI Lan Connected? IPMI Access?
Left (near VGA) No No
Left (near VGA) Yes Yes
Right (near BMC LAN) No No
Right (near BMC LAN) Yes Yes

That to me looks as expected - with the bond disabled you have to use the dedicated LAN port for the IPMI.

What Iā€™m not clear on though is how the IPMI webUI access can be prevented from the two non-BMC LAN ports. Iā€™m finding that that BMC can be pinged via the 2 LAN ports from the Server itself.

The network config in the OS (Iā€™m running Debian Buster) is a bit unique though, Iā€™ve both the LAN ports (the Intel NICs) bonded, and then Iā€™ve a Bridge set up on top of that so that my KVM virtual machines can access the LAN directly.

Iā€™m almost certain that before I set up the network bridge or bond in Debian, I wasnā€™t able to access the BMC over either LAN port via the Server OS.

I tried what was posted earlier in the thread about going into Settings -> Network -> IP Settings and then disabling the LAN, but then I locked myself out of the IPMI WebUI over the network totally. I tried to reset the IP via ipmitool over SSH, but in the end I had to plug a monitor and keyboard into the system to access the BIOS to manually re-enable the BMC network access.

Iā€™m not sure about whether I want to lock it out totally, as my VPN server is being hosted by one of those KVM virtual machines, but Iā€™d like to understand it better. None of this is explained in what little documentation there is. Anyone have any comments there?

2:
Iā€™ve also been looking at the IPMI Firewall rules. It seems the only way to configure those is via the WebUI. I canā€™t seem to find anything about whether it can be configured via ipmitool firewall option over the command line.

The best Iā€™ve come up with thus far is to block either the DHCP server IP range, or block everything except the IP of my desktop and VPN server on my LAN subnet.

It would be extremely easy to lock yourself out of the WebUI via the firewall. The only option to rectify that as far as I can see would be a factory reset of the BMC.

3:
Iā€™ve also never been able to get SSH into the BMC via its IP to work. It says its active via the services page, but it doesnā€™t seem to be listening on the BMCā€™s IP or other times itā€™ll seem to accept a login and then just hang after that.

Iā€™m not sure what I would do with SSH on the BMC though, itā€™s easy enough to SSH to the host and use the ipmitool utility over the command line.

Anyone managed to get SSH working?

2 Likes

As far as I can tell it is just a way to access Serial-over-Lan functionality - which is fantastic for changing BIOS options through a terminal without launching a remote KVM session in the browser. (but ipmi tool has the same functionality)

I managed to get it working by enabling SoL console redirection in the BIOS>Advanced>Serial Port console Redirection>SOL ā€œconsole redirectionā€

After saving the changes and rebooting the ssh should no longer just hang around and disconnect after a while - you will get a serial console and when booting you can hit F2 to enter the BIOS.
It looks like this through the SSH session:

Whatā€™s not so nice is that it seems that the session is automatically closed after a while of inactivity. In this aspect using ipmitool for SoL console is superior.

At the same time some ASpeed-centric board manuals from Tyan[1] and Supermicro[2] indicate that there is/was such a thing as ā€˜SMASHā€™ console, and itā€™s also possible to find references to a plain BusyBox instance[3]. One of the comments there also references [4] which points to the shell access being disabled for security reasons.

I can only speculate that Asrock/ASpeed disabled a direct shell access.

[1] https://www.tyan.com/manuals/AST2050_Manual_v101.pdf
[2] https://www.supermicro.com/manuals/other/IPMI_Users_Guide.pdf
[3] https://serverfault.com/questions/601201/accessing-supermicro-ipmi-via-ssh
[4] https://blog.rapid7.com/2013/11/15/exploiting-the-supermicro-onboard-ipmi-controller/

Edit: Just a bit more info about Serial ports
There are 2 ports available on my board that enumarate as /dev/ttyS0 and /dev/ttyS1:

  • S0 is your physical RS232 connector on the board I/O
  • S1 is Serial-over-Lan port located on the Aspeed chip AFAIK

Both can be used to access the BIOS (if you enable console redirection in the settings)
On linux you can set one[5] serial console as a kernel output [5][6] and read your syslog or capture kernel panics that you wouldnā€™t be able to normally. (because the output doesnā€™t always reach the VGA or ssh session)

[5] https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html
[6] https://wiki.archlinux.org/index.php/Working_with_the_serial_console#Kernel

2 Likes

Has anyone had a issue with the IPMI KVM?

I have difficulty getting access. Only occasionally can I get the screen to display so I can get access to the BIOS.

Usually it says Powered Off; then No Signal.

Note: The system boots ok. I can access the proxmox webui, etc.

Testing 3.35 and now up to the code 43 with my GT1030 card. :slight_smile:

Installing a graphics card will disable the onboard VGA and thus the BMC KVM.

Switch the following to get this to work.

BIOS -> Advanced -> Chipset and change the Onboard VGA setting from Auto to Enabled

Success!

1 Like

Thatā€™s some good info - thank you for that. Sounds like thereā€™s little point in getting the SSH service to run. Itā€™s probably just easier use ipmitool over the command line or just the standard WebUI.

From what I can tell 3.35 isnā€™t up on their website yet. Iā€™m assuming you have to contact customer support to get that?

I spent most of yesterday evening trying to passthrough a pcie Wi-Fi card to a VM, but ultimately ended up in failure.

My plan was to set Pfsense up in a VM, and passthrough a Wi-Fi card and 4-port NIC card that I have on order into it so I could properly test it out, since I have it in my head to roll my own router for the house.

I enabled the option to split the top two PCIe slots with 8 lanes each, and enabled the IOMMU in the BIOS. I also confirmed the Wi-Fi card was in its own IOMMU group.

I had no issue getting the Wi-Fi card to use the vfio-pci kernel driver. An lspci -vnn after a reboot confirmed it was using it. But when I started to launch the VM (a Debian guest) after pointing it to the host PCI device, dmesg would spit out an error very similiar to the below.
[ 111.020582] vfio-pci 0000:01:00.1: timed out waiting for pending transaction; performing function level reset anyway
[ 117.407625] vfio-pci 0000:01:00.1: timed out waiting for pending transaction; performing function level reset anyway

The VM then would throw up an error similar to the following, but it would boot and work okay after that, but it wouldnā€™t see the Wi-Fi card. Trying to shut it down caused problems - the host would hang and the only way to get the VM shutdown was to force a hard reset of the host.
unknown header type 7f. Ignoring device

Iā€™ve since removed the wi-fi card from the server so I canā€™t copy & paste the exact errors again. Also, given my server acts as a DNS server for the house, Iā€™ll probably just leave it alone now, and mabye test Pfsense on an old physical machine I have lying around instead. Sort of makes me wish I ponyed up the extra cost for an Epyc CPU & motherboard instead.

Question though - Thereā€™s been word about ongoing bugs in the AGESA preventing passthrough from working properly, and newer firmware solving it. Have others here experienced the same thing?

At least one other person has had a similar experience in this thread, and the Beta 3.35 seems to solve it.

Anyone using a good tower cooler on their board? Iā€™m looking for something that fits in a small tower. I have a Fractal Design Node 804 and the manual says a 160mm cooler height max. I just want to have a larger cooler that can run slowly to reduce noise and I still want to be able to use all my ram slots.
Any thoughts?
Thanks

Noctua NH-U12S or NH-D14 maybe? U12S is 158mm so barely fits but itā€™s probably the biggest you can go. D14 is exactly 160mm soooā€¦ yeah IDK.

1 Like

Iā€™ve finally got my hands on an x470d4u. Iā€™m running a 2700x and 2x32GB Samsung M391A4G43MB1-CTD. I ran Memtest86 v7.5 and had several passes without any errors reported. Iā€™m pretty sure I also ran a single pass on whatever version of Memtest86 comes bundled with the Proxmox 6.2-1 installer too. Then I tried Memtest86 v8.4 and I got a load of errors showing up but the RAM passed anyway as all the errors were corrected.

Cue a bunch of RAM juggling, reseating and swapping DIMMs around, running a single DIMM in each slot etcā€¦

What ended up stopping the errors was manually setting the RAM speed in the BIOS (for which I have to thank @Mastakillaā€™s posts over on the FreeNAS forums for pointing me in the right direction. Thanks!).

One interesting thing of note is that it appears that the RAM speed reported by Memtest86 is simply the spec of the RAM rather than an actual reading of the speed itā€™s running at. Something that is further born out by the fact that, before I changed the speed in the BIOS, Memtest86 v8.4 was saying the RAM was ā€œ2666MHzā€ (as it should be) but the ASRockRack Server Management application was reporting it as 2400 MT/s (when speed was set to ā€œautoā€ in the BIOS). But after setting the correct speed, the app reports it as 2666 MT/s.

Is it just me, or is the Memtest86 interface kind of open to misinterpretation?

@JediAcolyte just an FYI, the following review installed an NH-D14 into a Node 804 without issue - https://thepcenthusiast.com/fractal-design-node-804-review/

1 Like

Oh, so someone else had the same problem!
I reported it in post 1031

I am running 2 sticks of KSM26ED8/16ME (2666 Mhz).
As per the manual: 2 dual rank sticks mean auto frequency set to a max of 2400 Mhz.
On those default settings I am experiencing random corrected ECC errors. Manually setting a frequency to 2666 fixes the issues (but it is an overclocked config)

I did file a support ticket and sent my board for RMA - the retailer found no issues and sent it back to me. Asrock support was also unable to help.

Edit:

Kind of: memtest probably simply reads the JADEC frequencies from the SPD chips. it reports what stick it is. not what are the current operating parameters.

Anyone knows if it is even possible to ask the SPD chip or a BIOS about operating frequencies? I mean a specifiaction/API being commonly implemented. Or is it just a wild west?

Thanks @HanSolo,
That looks like that NH-D14 just barely fits in the case. I ended up ordering a NH-U12S and hopefully all my parts will finally be in around the middle of July.

1 Like

Good choice. When you install it, would you be so kind as to post a picture of the mounting mechanisms clearance of the RAM slots please?

Iā€™m currently using a Scythe Kotetsu on my 2700x + x470d4u and I have a slight concern that it might not be quite enough during warmer weather. If I end up having to replace it, knowing whether a Noctua heatsink, such as an NH-D14 / 15, or a NH-U12S would fit would be really helpful.

I bought a X470D4U2-2T last week, and it came without a bios. I tried installing 3.30 via the IPMI, but that did nothing. I then sent the board back for a replacement, the replacement had the same problem.

I tried 2 different PSUs, did not change anything.

The BIOS uploads to the Board, and it takes some time as if it were actually flashing it to the Chip, but then the BIOS Version field in the IPMI stays empty.

Can someone help me please ?
I would really love to use this board if I got it running.

Itā€™s normal, the BIOS version can only be read powered on.

@HanSolo, will do. Iā€™ll try to do a short thread of what I built and let people rake me over the coals for what I could have done better.

1 Like