Jump to content











Photo

Bug Reports, Requests, HowTo's about Tiny PXE Server

pxe network boot

  • Please log in to reply
689 replies to this topic

#676 reboot12

reboot12

    Frequent Member

  • Advanced user
  • 210 posts
  • Interests:WinXP, Debian, OpenWrt, gPXE, iPXE, BIOS, Coreboot
  •  
    European Union

Posted 2 weeks ago

Correct, with one exception there : you currently need to hard code the ip, the username, password, etc ...
If you change any of these items in your environement, or move to another computer, go to a friend, etc, you have to redo your image.

OK, now understand but such a scenario is highly unlikely. I always use Tiny PXE Server installed and configured on my laptop. WINDOWS of my friend is damaged :D



#677 ZEE

ZEE

    Member

  • Members
  • 79 posts
  •  
    Portugal

Posted 2 weeks ago

About the ProxyDHCP...

 

What data TinyPXE inject over the DHCP info that is obtained from the main DHCP server ??

 

?have a link for a manual

 

If it injects only over fields that are not assigned by the main DHCP

?is there a option to override some fields (choosen by me of course)



#678 ZEE

ZEE

    Member

  • Members
  • 79 posts
  •  
    Portugal

Posted 2 weeks ago

About DNSd

 

?where can I get more info on configuration

 

did it recurses over the next server when name is not found?



#679 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted 2 weeks ago

About the ProxyDHCP...

 

What data TinyPXE inject over the DHCP info that is obtained from the main DHCP server ??

 

?have a link for a manual

 

If it injects only over fields that are not assigned by the main DHCP

?is there a option to override some fields (choosen by me of course)

 

Here below the options that may be part of the of the proxy dhcp answer from TPS

option54
option13 (if bootp filename<>'')
option17
option43
option60
option66
option67
option97 (if the client sent one)
option252
any other option in opt extra field

  • ZEE likes this

#680 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted 2 weeks ago

About DNSd

 

?where can I get more info on configuration

 

did it recurses over the next server when name is not found?

 

If DNSd is enabled, on any hostname query that comes in, TPS will first look in config.ini, and if not found will hand over the query to the system (which will then use whatever dns server has been set).

 

That can be handy to write a batch that will not depend on hardcoded IP's but rather on a hostname which I can always reuse whatever my network config is (that scenario would work only in plain dhcp mode, not in proxydhcp mode).

 

Example, "repository.local" hostname dns query comes in, TPS will look for the below in config.ini and will resolve to 192.168.1.100.

 

Note that this would work also for hostnames such as www.facebook.com, etc and would be seen as DNS hijacking.

[repository.local]
ip=192.168.1.100

  • ZEE likes this

#681 ZEE

ZEE

    Member

  • Members
  • 79 posts
  •  
    Portugal

Posted A week ago


Note that this would work also for hostnames such as www.facebook.com, etc and would be seen as DNS hijacking.

[repository.local]
ip=192.168.1.100

 

can you provide a link to info about these DNS configurations...
or better... some diverse examples...

​Thx



#682 reboot12

reboot12

    Frequent Member

  • Advanced user
  • 210 posts
  • Interests:WinXP, Debian, OpenWrt, gPXE, iPXE, BIOS, Coreboot
  •  
    European Union

Posted A day ago

I try boot from VMware Workstation 8 EFI but no success. I use this file http://boot.ipxe.org/ipxe.efi in root folder after rename to bootx64.efi, TPS 1.0.0.21. This is my config.ini:

[arch]
00006=bootia32.efi
00007=bootx64.efi

[dhcp]
verbose=1
;for Netboot working
rfc951=1

root=C:\PXE
filename=bootx64.efi
httpd=1
binl=0
;start=1
dnsd=0
proxydhcp=0
;if multiple interfaces detected bind is always enabled in GUI
bind=1
smb=0
cmd=freenfs.exe
offline=freenfs_off.bat
;log=0
;syslog=127.0.0.1
;for RIS client working (for TPS 1.0.0.11 need opt43=0.0.0.0)
opt43=1
opt60=PXEClient
;optextra=43.7.1.4.0.0.0.0.255

[web]
port=80

In TPS logs I noticed this:

19:31:01 DHCPd:Arch=00009

I test also other PXE server runing on OpenWrt CC router and VMware boot OK with same ipxe.efi file:

Attached File  openwrt_ok.gif   10.3KB   0 downloads



#683 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted A day ago

I try boot from VMware Workstation 8 EFI but no success. I use this file http://boot.ipxe.org/ipxe.efi in root folder after rename to bootx64.efi, TPS 1.0.0.21. This is my config.ini:

[arch]
00006=bootia32.efi
00007=bootx64.efi

[dhcp]
verbose=1
;for Netboot working
rfc951=1

root=C:\PXE
filename=bootx64.efi
httpd=1
binl=0
;start=1
dnsd=0
proxydhcp=0
;if multiple interfaces detected bind is always enabled in GUI
bind=1
smb=0
cmd=freenfs.exe
offline=freenfs_off.bat
;log=0
;syslog=127.0.0.1
;for RIS client working (for TPS 1.0.0.11 need opt43=0.0.0.0)
opt43=1
opt60=PXEClient
;optextra=43.7.1.4.0.0.0.0.255

[web]
port=80

In TPS logs I noticed this:

19:31:01 DHCPd:Arch=00009

I test also other PXE server runing on OpenWrt CC router and VMware boot OK with same ipxe.efi file:

attachicon.gifopenwrt_ok.gif

 

I see that ipxe.efi gets downloaded so this is a good start.

 

I would need TPS log files.

 

Just one idea : try removing opt60=PXEClient.

See post which looks similar to what you are trying to achieve.



#684 reboot12

reboot12

    Frequent Member

  • Advanced user
  • 210 posts
  • Interests:WinXP, Debian, OpenWrt, gPXE, iPXE, BIOS, Coreboot
  •  
    European Union

Posted A day ago

I see that ipxe.efi gets downloaded so this is a good start.

I would need TPS log files.

Just one idea : try removing opt60=PXEClient.

Yes, after remove opt60 EFI boot working :) and no need [arch] section in config.ini

 

There is another matter. Probably option Bind IP work only with BIOS firmware and not work with EFI firmware (maybe only VMware)

 

VMware with BIOS firmware boot from Tiny PXE (DHCP)

VMware with EFI firmware boot from my OpenWrt router (DHCP)

 

To workaround problem I need disable option Authoritative in OpenWrt DHCP settings and restart router:

Attached File  openwrt_authoritative.png   11.58KB   0 downloads

or disconnect OpenWrt router from network.



#685 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted A day ago

Yes, after remove opt60 EFI boot working :) and no need [arch] section in config.ini
 
There is another matter. Probably option Bind IP work only with BIOS firmware and not work with EFI firmware (maybe only VMware)
 
VMware with BIOS firmware boot from Tiny PXE (DHCP)
VMware with EFI firmware boot from my OpenWrt router (DHCP)
 
To workaround problem I need disable option Authoritative in OpenWrt DHCP settings and restart router:
attachicon.gifopenwrt_authoritative.png
or disconnect OpenWrt router from network.


Two DHCP servers fighting on your lan.
Use optextra=175... to try to win the battle.

#686 reboot12

reboot12

    Frequent Member

  • Advanced user
  • 210 posts
  • Interests:WinXP, Debian, OpenWrt, gPXE, iPXE, BIOS, Coreboot
  •  
    European Union

Posted A day ago

Two DHCP servers fighting on your lan.
Use optextra=175... to try to win the battle.

Maybe this help but with BIOS firmware I did not have to use optextra. This is only for EFI.



#687 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted 15 hours ago

Maybe this help but with BIOS firmware I did not have to use optextra. This is only for EFI.

 

Thing is because you have two dhcp servers on your LAN, you will get inconsistent behaviors.

Different boot loaders (bios or UEFI) will react differently to different dhcp servers.

 

Adding optextra=175.6.1.1.1.8.1.1 will instruct IPXE to use Tiny PXE Server before any other DHCP server on your LAN.

However I cannot guarantee that your initial boot loader (bios or UEFI) will always pick Tiny PXE Server first : OpenWRT may be quicker to respond and/or vmware may "prefer" OpenWRT over Tiny PXE Server.

 

In your situation, you should have a "basic" DHCP server and a proxy dhcp server OR one unique PXE/DHCP Server.



#688 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted 14 hours ago

 

 

There is another matter. Probably option Bind IP work only with BIOS firmware and not work with EFI firmware (maybe only VMware)

 

The boot loader (BIOS or UEFI) does not care about the server binding or not.

 

What this means is that you are probably "listening" on the wrong interface/ip.

This is a common setup mistake when playing with vmware workstation (or virtualbox).

These use multiple virtual interfaces (bridge, host-only or NAT) and it is easy to pick (listen to) the wrong one.

 

Unselecting "bind ip" makes it so that Tiny PXE Server will try to listen to all interfaces but here again you will get inconsistent results.

 

Not to mention that in host only and nat mode, vmware also acts as a dhcp server thus impacting your DHCP/PXE boot process ...

 

I personally always go for bridge (my default LAN interface).



#689 reboot12

reboot12

    Frequent Member

  • Advanced user
  • 210 posts
  • Interests:WinXP, Debian, OpenWrt, gPXE, iPXE, BIOS, Coreboot
  •  
    European Union

Posted 14 hours ago

In your situation, you should have a "basic" DHCP server and a proxy dhcp server OR one unique PXE/DHCP Server.

TPS is cool software but I run it only during installation e.g. Windows over wimboot. TPS does not work non-stop. As I wrote, instead of set optextra I disabled Authoritative option on OpenWrt.

The boot loader (BIOS or UEFI) does not care about the server binding or not.

Yes, Bind IP does not apply to my problem.

I personally always go for bridge (my default LAN interface).

Yes, I also only use Bridged mode and disable the DHCP server in VMware.

#690 erwan.l

erwan.l

    Gold Member

  • Developer
  • 1856 posts
  • Location:Nantes - France
  •  
    France

Posted 14 hours ago

TPS is cool software but I run it only during installation e.g. Windows over wimboot. TPS does not work non-stop. As I wrote, instead of set optextra disable Authoritative option on OpenWrt.
Yes, Bind IP does not apply to my problem.
Yes, I also only use Bridged mode and disable the DHCP server in VMware.

 

Indeed, if two DHCP servers are on the same layer 2 segment and either is configured to be Authoritative then it will invalidate the other's attempts to give leases.

By default, I would recommend to always disable DHCP-Authoritative.

 

https://en.wikipedia...ration_Protocol

 

 

 

DHCP discovery

The client broadcasts messages on the network subnet using the destination address 255.255.255.255 or the specific subnet broadcast address. A DHCP client may also request its last-known IP address. If the client remains connected to the same network, the server may grant the request. Otherwise, it depends whether the server is set up as authoritative or not. An authoritative server denies the request, causing the client to issue a new request. A non-authoritative server simply ignores the request, leading to an implementation-dependent timeout for the client to expire the request and ask for a new IP address.







Also tagged with one or more of these keywords: pxe, network boot

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users