kernel interface not working



  • Hi,

    I am running FOG 1.5.8 with kernel 4.19.118 (both 64 and 32 bit)

    I am trying to image a Dell Inspiron 15 3576.

    I can PXE boot the laptop fine, it connects, I get the menu, and then after I pick something it boots to Linux and I get this error:

    Starting enp2s0 interface and waiting for the link to come up
    No link detected on enp2s0 for 35 seconds, skipping it.
    Failed to get an IP via DHCP! Tried on interfaces(s): enp2s0
    Please check your network setup and try again!
    Press enter to continue

    I cannot get past this with this laptop.

    I checked all the settings I could think of.
    I updated the kernel to the most recent.
    I cannot find anything in the logs to help.

    If anyone has an idea where to point me I’d much appreciate it.

    Thanks,

    JF


  • Senior Developer

    @Jeff-Findley said in kernel interface not working:

    Just an FYI - according to Netgear none of their unmanaged switches do any sort of STP. But who knows.

    Yeah you never know. But beside STP we have seen a few cases where ethernet energy efficiency (EEE) stuff kicked in and caused such things. While it is possible to be EEE I still suspect George is right with STP…



  • @george1421 Just an FYI - according to Netgear none of their unmanaged switches do any sort of STP. But who knows. When I bought this I did notice they have a very similar looking switch that is managed.

    I’ll get another cheap one and see if that solves the issue.

    Thanks again for the help and the great project. This has been a great tool to me over many many years.


  • Moderator

    @Jeff-Findley Well you can either go with a cheaper switch or a used enterprise switch where you can enable RSTP, MSTP, port-fast or what ever the switch mfg calls it.



  • @Sebastian-Roth Excellent! Deploying now.

    That’s really frustrating that a crappy NIC and cheap switch can cause such a headache.

    I’m so used to having so many devices and tools at my disposal. Now, not so much.

    Stone knives and bear skins…

    Thanks George and Sebastian for all your help. I’m just trying to make one small step forward.


  • Senior Developer

    @Jeff-Findley said in kernel interface not working:

    So, aside from “fixing” this problem - since I can get to the command line with an address and ping the server is there a way now for me to manually run the scripts to deploy the image I want?

    Sure, in debug mode (as suggested by George) you just type fog and hit ENTER to start the task. Though you will need to step through this manually. Give it a go.



  • @george1421 Okay, that makes sense.

    And yes, it did not get an address and then got one fine at the udhcpc command.

    So, aside from “fixing” this problem - since I can get to the command line with an address and ping the server is there a way now for me to manually run the scripts to deploy the image I want?

    I only have a handful of laptops I need to image at this point.

    Later, I can try another network switch and see if I get different results.


  • Moderator

    @Jeff-Findley So the only change is time that fixes the problem. I’m going to assume that during the boot into the debug mode it failed to get an IP address, but when you manually issues the udhcpc command it worked fine?

    If it is truly time that fixes the issue, the problem is MOST LIKELY spanning tree. Even some of the unmanaged switches have standard spanning tree enabled by default. You typically don’t find this in home switch gear. Usually the test is to put a cheap unmanaged (i.e. $20 monoprice) switch in between to test.



  • @george1421 Hi,

    Okay, did the deploy an image with debug.

    When I got the the prompt I issued the udhcpc command and it got an address just fine. Correct subnet and everything.

    lspci showed the correct device for what we are working with.

    ip addr show shows two interfaces:

    lo and enp2s0 and the working interface has the correct address from the DHCP pool, correct broadcast, etc.

    I can ping the FOG server’s address from the target host at the command line.


  • Moderator

    @Jeff-Findley well that destroys that idea.

    So what I want you to do with that host is to schedule a capture or deploy task to that computer, the action doesn’t matter. But before you hit the schedule task button, tick the debug checkbox then hit the schedule task button. Now pxe boot the target computer, it should boot into debug mode on the target computer. You need to press the enter time a few times to clear the text on the screen. Eventually you will be dropped to the FOS Linux command prompt.

    At the fos linux command prompt wait 30 seconds then key in the following: /sbin/udhcpc -i enp2s0 --now assuming the host from the OP.

    If that doesn’t pick up an IP address then take a clear screen shot with a mobile phone of the output of these commands.

    lspci -nn | grep -i net

    ip addr show



  • @george1421 Hi - here is what I did:

    The target host is not registered (never has been - new install) so instead I renamed bzImage to bzImage-old and renamed bzImageRT to bzImage.

    Got into the menu and got the same result - no DHCP on that interface.

    If I need to do that differently please let me know.

    JF


  • Moderator

    @Jeff-Findley If we were to have network issues, its typically with realtek network adapters. They are cheap and installed everywhere.

    So here is what I want you to try.

    1. Here is a modified version of the FOG Linux kernel https://drive.google.com/open?id=1wZwwOwbEr0nR3mnPLKg7AsulwJaGhO0A

    2. Down load that file and save it in /var/www/html/fog/service/ipxe directory.

    3. Go into the fog ui and host management, then select this target host computer.

    4. In the kernel field enter bzImageRT watch your case because the name needs to match exactly what you downloaded.

    5. Now pxe boot and enter one of the menus that boot the FOS Linux kernel. See if this now connects correctly and gets an IP address.



  • @george1421 Also, I should add that this is all a fresh install on another laptop.

    I did change the IP addressing after I did the initial install. But I believe I made all the correct changes and then ran the installer again.

    Initially PXE boot wasn’t working at all due to the address change. But I went through all the wiki steps and now PXE works. Until I get to the kernel loading a NIC driver.



  • @george1421 Hi - here are the details I have:

    #1 I am at my second home and all I have is one unmanaged Netgear switch.

    #2 The adapter is a Realtek PCIe FE Family Controller

    Vendor = 10EC
    Device = 8136

    Using the online PCI database I get this for the vendor and device numbers:

    RTL810xE PCI Express Fast Ethernet controller

    According to what I can find online this NIC has been supported since kernel version 2.9.16. So it isn’t new.

    ???


  • Moderator

    two things come to mind here.

    1. The network port where the pxe booting computer is has standard spanning tree enabled and not one of the fast spanning tree protocols. Placing a cheap unmanaged switch between the pxe booting computer and the building switch is a quick test if its a spanning tree issue.

    2. The FOG kernel doesn’t support that network adapter for whatever reason. If you have windows running on another computer of the same exact model, provide the hardware IDs (vend and device) of that network adapter and I’ll look it up to see if the kernel supports it. This usually happens with really new hardware where the linux kernel developers haven’t created the drivers yet for the hardware.

    I’m kind of leaning towards issue #1 over #2.



  • One update:

    I just tried an Acer Aspire E3-111 and got the same result.

    Different interface name (enp3s0 instead of enp2s0) but same result.

    So I’m guessing I must have something configured wrong someplace.


Log in to reply
 

279
Online

7.4k
Users

14.5k
Topics

136.5k
Posts