Chainload PXE from iPXE



  • Hello all! Happy Easter!! :smile:
    Does anyone know if it is possible to chainload PXE from iPXE?
    I just setup a new FOG 1.2.0 server (svn 6917), and I have an existing FOG 0.32 server.
    I want to chainload the 0.32 menu from the new 1.2.0 server’s menu because I have customized the 0.32 menu to do a lot of different stuff (tools, ISOs, live linux, Windows installers, etc.), and it will take me sometime to figure out how to customize them on the new 1.2.0 menu.

    Here’s my chainload configuration on the 1.2.0 menu, but it doesn’t work. It comes up with an error “unable to locate configuration file”.
    0_1458922093777_upload-5d8f5c74-ec52-430e-be42-f8120f7420ae
    0_1458923828868_upload-b459a7b9-58ad-4e5c-8e37-7663f10c0802

    Anyone has any ideas? Any help will be appreciated.
    :grin:



  • Hello ALLLLLLLLLL!
    I did it!!! :laughing: :laughing: :laughing:
    The problem was when the client executes the chain command, it sends another request to the DHCP server, and it points the client back to the same iPXE server because that’s what the DHCP server has.

    The solution is to explicitly specify the PXE server with command “set net0/next-server iPXE-server-ip”.
    Please see below for my screenshot.
    0_1458935856581_upload-77255287-209f-40df-bbc4-b1e534ccd24a

    Thank you guys for all the help!!! :grinning:


  • Moderator

    One last bit of info that my be useful. If you DO decide to move to the trunk way of managing the boot menu. Using this url may help you with your porting of the 0.32 menus over to the trunk method.

    http://<fog_server_IP>/fog/service/ipxe/boot.php

    If you key that into your browser, you can get an idea of when you change field X in the web gui it has impact Y in the boot menu. Once you figure out what fields do what in the boot menu, your configuration will be more understandable. Best of luck.



  • Hi @george1421 thanks for your suggestion!!
    I may have to go that route if I can’t figure it out!! :disappointed_relieved:


  • Moderator

    IMO, you would be better off (now that you are on the trunk release) to just use the native trunk tools for creating your custom menu. Its quite easy now (as compared to hand editing the config files) and can all be done via the gui. Instead of putting effort into making the older way work, focus those efforts on the recommended and supported solution moving forward.

    I wrote a tutorial that may be of some use on how to boot a MDT iso image from the new FOG menu.
    https://forums.fogproject.org/topic/6284/booting-mdt-2013-litetouch-with-fog/8

    There is also a geat wiki page with more helpful hints.https://wiki.fogproject.org/wiki/index.php/Include_any_ISO_in_the_FOG_Bootmenu



  • Hi @Tom-Elliott Thanks for your reply.
    I have changed the DHCP options already. I’m able to boot to the new FOG server ( trunk 6917), but I can’t figure out how to chainload the 0.32 menu from there. Do you have any ideas? :smiley:



  • @Quazz
    that doesn’t work. It comes up with the exact same error. :persevere:
    any ideas on what else i can try? Thanks!


  • Senior Developer

    Grrrr,
    You’re not running 1.2.0, you’re running Trunk version 6917. This is important. 1.2.0 was the last stable release. Trunk (at least in my eye’s) is NOT 1.2.0 (rev 6917). It’s Trunk version 6917.


  • Senior Developer

    I feel this needs to be added.

    Your 1.2.0 server doesn’t have a /tftpboot/pxelinux.cfg folder, and it does not have pxelinux.0 readily available. You should change your DHCP Option 66/67 (next-server/filename) settings to look at the 1.2.0 ip and filename undionly.kpxe (or undionly.kkpxe).

    From there, the chain should be able to happen pretty easily.

    I’d more recommend you to upgrade to trunk where you can actually create your own menu items that display on the first menu page.

    https://wiki.fogproject.org/wiki/index.php?title=Upgrade_to_trunk


  • Moderator

    @eric0626 If the PXE is located on the same server all you should need is

    chain pxelinux.0
    

    If it’s located on another server then

    chain tftp://10.2.5.239/pxelinux.0
    

    Should work.

    Assuming your tftp directory is /tftpboot you will need the following:

    /tftpboot/pxelinux.0
    /tftpboot/pxelinux.cfg/default (<- config file)

    And of course other relevant PXE files.



  • Hi @Quazz, thanks for your reply.
    So could you please tell me how i should change the config parameters? :grimacing:


  • Moderator

    You have to chain the pxelinux.0 file, not the configuration file itself.

    And your default file should be in the pxelinux.cfg folder which should reside at the root of your tftp directory


Log in to reply
 

328
Online

38725
Users

10554
Topics

99911
Posts

Looks like your connection to FOG Project was lost, please wait while we try to reconnect.