Arch Linux static DNS failure
[x]: This bug persists when memory is increased beyond 8GB.
Describe the bug When the network is setup statically and the installation of Archlinux is started, the DNS IP is not passed to the Archlinux installation and the installation fails.
To Reproduce Steps to reproduce the behavior:
- Load the ISO image
- Enter the network information manually
- Choose the Arch Linux
Expected behavior While the initial files are downloaded without problems, proving that the DNS was working, the installation fails due to DNS failure when loading the Arch Linux installation files.
Screenshots
I also had this issue, and I saw this on the Arch Linux iPXE menu code:
https://github.com/netbootxyz/netboot.xyz/blob/0983f34a889990e19040f030a4708d271f2f1874/roles/netbootxyz/templates/menu/archlinux.ipxe.j2#L14-L19
The archlinux/mkinitcpio/mkinitcpio-archiso repository now tracks the bug on https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio-archiso/-/issues/11 and related module has another issue on https://gitlab.archlinux.org/archlinux/mkinitcpio/mkinitcpio-nfs-utils/-/issues/3.
While the workaround netboot.xyz has should work, it seems that whenever you request an item via mirrors.kernel.org (for which the IP is (139.178.88.99), it now redirects you to mirrors.edge.kernel.org; which you can't request items with just the IP address as the host.
I tried this with curl:
~ ❯ curl -vfsSL http://139.178.88.99/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs
* Trying 139.178.88.99:80...
* Connected to 139.178.88.99 (139.178.88.99) port 80 (#0)
> GET /archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs HTTP/1.1
> Host: 139.178.88.99
> User-Agent: curl/7.88.1
> Accept: */*
>
< HTTP/1.1 301 Moved Permanently
< Server: nginx
< Date: Thu, 09 Oct 2025 10:50:21 GMT
< Content-Type: text/html
< Content-Length: 162
< Connection: keep-alive
< Location: http://mirrors.edge.kernel.org/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs
< Strict-Transport-Security: max-age=15768001
< X-Content-Type-Options: nosniff
< X-Frame-Options: DENY
< X-XSS-Protection: 1; mode=block
<
* Ignoring the response-body
* Connection #0 to host 139.178.88.99 left intact
* Issue another request to this URL: 'http://mirrors.edge.kernel.org/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs'
* Trying 213.196.21.55:80...
* Connected to mirrors.edge.kernel.org (213.196.21.55) port 80 (#1)
> GET /archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs HTTP/1.1
> Host: mirrors.edge.kernel.org
> User-Agent: curl/7.88.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx
< Date: Thu, 09 Oct 2025 10:50:21 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 1003560960
< Last-Modified: Wed, 01 Oct 2025 16:11:03 GMT
< Connection: keep-alive
< Vary: Accept-Encoding
< Content-Security-Policy: default-src https:
< Strict-Transport-Security: max-age=15768001
< X-Content-Type-Options: nosniff
< X-Frame-Options: DENY
< X-XSS-Protection: 1; mode=block
< Accept-Ranges: bytes
<
* Failure writing output to destination
* Closing connection 1
~ ❯
~ ❯ curl -vfsSL http://213.196.21.55/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs
* Trying 213.196.21.55:80...
* Connected to 213.196.21.55 (213.196.21.55) port 80 (#0)
> GET /archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs HTTP/1.1
> Host: 213.196.21.55
> User-Agent: curl/7.88.1
> Accept: */*
>
< HTTP/1.1 301 Moved Permanently
< Server: nginx
< Date: Thu, 09 Oct 2025 10:51:08 GMT
< Content-Type: text/html
< Content-Length: 162
< Connection: keep-alive
< Location: http://mirrors.edge.kernel.org/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs
< Strict-Transport-Security: max-age=15768001
< X-Content-Type-Options: nosniff
< X-Frame-Options: DENY
< X-XSS-Protection: 1; mode=block
<
* Ignoring the response-body
* Connection #0 to host 213.196.21.55 left intact
* Issue another request to this URL: 'http://mirrors.edge.kernel.org/archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs'
* Trying 213.196.21.55:80...
* Connected to mirrors.edge.kernel.org (213.196.21.55) port 80 (#1)
> GET /archlinux/iso/2025.10.01/arch/x86_64/airootfs.sfs HTTP/1.1
> Host: mirrors.edge.kernel.org
> User-Agent: curl/7.88.1
> Accept: */*
>
< HTTP/1.1 200 OK
< Server: nginx
< Date: Thu, 09 Oct 2025 10:51:08 GMT
< Content-Type: text/plain; charset=utf-8
< Content-Length: 1003560960
< Last-Modified: Wed, 01 Oct 2025 16:11:03 GMT
< Connection: keep-alive
< Vary: Accept-Encoding
< Content-Security-Policy: default-src https:
< Strict-Transport-Security: max-age=15768001
< X-Content-Type-Options: nosniff
< X-Frame-Options: DENY
< X-XSS-Protection: 1; mode=block
< Accept-Ranges: bytes
<
* Failure writing output to destination
* Closing connection 1
~ ❯
So, either we wait for archlinux/mkinitcpio/mkinitcpio-nfs-utils to fix the static DNS issue or choose a mirror that allows downloads with URL hostname being an IP.