====== BKO and static networking issues ======
===== Problem =====
Though gpxe works fine with static networking information, problem is with linux destributions.
I have modified all linux distributions to use ''udhcpc'' for getting networking configuration by using ''DHCP''.
So in current setup, the linux will boot, but it will never get networking configuration for static network and hence, it will never progress.
===== Possible solution 1 : manual configuration =====
Ask user to enter the networking configuration. But this is very lame way of doing it.
===== Possible solution 2 : use gpxe configuration =====
As gpxe is have properly working networking configuration, we can reuse it.
The problem in this is that,
- how do gpxe passes the networking configuration information to ''pxelinux.0''?
- How do pxelinux.0 passes this information to linux kernel?
==== Passing information from pxelinux.0 to linux kernel ====
Linux kernel can take parameter which will have network configuration info.
ip=::::::
Refer to [[http://www.mjmwired.net/kernel/Documentation/filesystems/nfsroot.txt|Documentation/filesystems/nfsroot.txt]] for more details on these parameters\\
The unknown factor here is that, if information is with ''pxelinux.0'', and parameters are taken from config file.
So, I need a way by which configuration file can inform ''pxelinux.0'' to fill in the , , with values it is having.\\
I would also like to pass on the DNS ip which is not an option above. I may add one more parameter, or reuse as
==== Passing information from gpxe to pxelinux.0 ====
I don't have any clue about this part. This part may prove to be tricky.
Following are the parameters that I need to pass on.
- net0/ip
- net0/netmask
- net0/gateway
- net0/dns
Again, I need to pass the values of these variables, I hope that gpxe is capable of doing this.
===== Solution =====
''IPAPPEND'' worked for me without any problems. Honestly, I do not understand how it works, but I am using ''IPAPPEND 3'' (because I have been told to use this option).
Unfortunately, the documentation related to IPAPPEND is quite hard to find. Any pointers on how exactly IPAPPEND works will be helpful.\\
Small drawback of this solution is that, the DNS entry is not passed. So, I won't be able to use URL's and I have to stick to IP only.