# PXE Diskless Client w/ Two Interfaces [weirdness discussion]

## travlr

############

# OVERVIEW #

############

Kernel getting confused by two ethernet interfaces when booting pxe diskless client via nfsroot.

edit.. kind of solved, but now i'm confused   :Shocked:  ... see my post below.

##########

# DETAILS #

##########

DHCP, TFTP and kernel image transfer.. from server.. over lan.. works without any issue.

No loadable modules or initrd.. all drivers built into the kernel.

The client has two ethernet devices.. one facing the lan and one facing the wan (client is to be the iptables nat/snat router).

If I declare both device drivers in the kernel config, my kernel loading just stops.. due to lan facing device going down (presumably.. I notice from kernel messages that the wan facing device gets a dhcp address from my internet provider's server, and.. possibly.. does not continue to do so from my dhcp server for the lan facing device).

If I declare only the lan facing ethternet device driver in the kernel.. all is well with the booting process.. (successful virt shell prompt).

I am not yet aware of how to capture the kernel boot process log, but working on it at this moment (dmesg isn't activated until after a successful kernel loading).

I believe that I need to better specify the kernel command line parameters for an nfsroot kernel so that the lan facing iface is not killed in the process.

#####################

# RELEVANT CONFIGS #

#####################

pxelinux.cfg

```

default linux

label linux

    say booting gentoo linux over pxe...

    kernel /boreal/boot/vmlinuz

    append net.ifnames=0 ip=dhcp root=/dev/nfs loglevel=7 nfsroot=10.10.10.1:/pxe/boreal,nfsvers=3 nfsrootdebug rw

```

##########

# FINALLY #

##########

I rarely ask for help and stubbornly try to fix issues myself... I give in this time  :Very Happy: 

Thank you all in the Gentoo community.. love this distro!

~Peter

----------

## Jaglover

http://stackoverflow.com/questions/11642330/linux-built-in-driver-load-order

I think it's worth a try.

----------

## travlr

##########

# UPDATE #

##########

Solved... well kind of, because now this is getting really weird.

I configured the wan facing device driver as the only loadable module for my kernel.

I did not list the module in /etc/conf.d/modules.

AND... I don't even have that interface mentioned in /etc/init.d/.

I expected to have to modprobe <device-driver-module-name>.

Funny enough, everything works now.. without even needing to modprobe the loadable module (the exception that my wan facing nameserver is incorrect in /etc/resolv.conf.. easy enough to fix).

###############

# AT THIS POINT #

###############

Several weird issues to hopefully discuss with you. Even though this works now, I'd like to know more about this peculiar situation. Hopefully we can shed some more light on it.

~Peter

----------

## Jaglover

AFAIK recent kernels load modules if matching hardware is found.

----------

## travlr

 *Jaglover wrote:*   

> AFAIK recent kernels load modules if matching hardware is found.

 

Hi Jaglover,

I did not know that.. very good. Do you happen to have any references handy for that? If not no problem I'll end up google searching it. Thanks for your input.. you're first post was very interesting.. i've bookmarked it for future deep kernel endevours..   :Cool: 

----------

