Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Passing manual network config to kernel #1578

Open
jsschmid opened this issue Feb 24, 2025 · 0 comments
Open

Passing manual network config to kernel #1578

jsschmid opened this issue Feb 24, 2025 · 0 comments

Comments

@jsschmid
Copy link

jsschmid commented Feb 24, 2025

Hey!
First of all: Thanks a lot for the project! It's a huge timesaver and it's really convenient.

I use it for installing distros and it worked really fine, untill ...
... there was no DHCP. It actually didn't cause a problem for netboot, as there is the manual network configuration.

However, the section live CDs mostly fails, because the distros assuming there should be a DHCP.
e.g. when trying to boot anything from the "Utilities" section it'll fail, as it doesn't get a IP / Gateway / DNS / Netmask
and there seems no way to set it manually.

No easy way at least.

But there is a way: I've looked at the menu on Github. There is for example the menu of OpenSUSE, which, if netboot.xyz was started with manual network configuration, takes this very configuration and passes it on to the kernel.

https://github.com/netbootxyz/netboot.xyz/blob/8d25c1167d5427620799f710aca58af0e375b1eb/roles/netbootxyz/templates/menu/opensuse.ipxe.j2

Wouldn't it be really nice to have this option for all the options from the menue?

I'm not to keen on grub2 so it'd quite some time until I could submit a pull request which would work. It should be something like
linux /vmlinuz-... ip=192.168.1.100::192.168.1.1:255.255.255.0::eth0:off

Or in case of the OpenSUSE example using the variables from the manual network configuration entered booting netboot.xyz. Something like

set netsetup netsetup=hostip,gateway,nameserver hostip=${ip}/${prefix} gateway=${gateway} nameserver=${dns}
set netsetup ${netsetup} BOOTIF=${netX/mac}
kernel ${opensuse_mirror}/${dir}/${kernel_url}/linux ${netsetup} ...

It would be to helpful for example to change an root lvm in size witout having to make leaps to get a distro on a local non lvm partition. Or set up a boot iso, beacuse its really not convenient for some providers.
I could just add netboot.xyz in the grub2 boot menue and boot it up as needed without any hassle.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant