iPXE problem with sanboot line
-
Hello. Im trying to boot a Windows image using iPXE, the code used is :
#!ipxe :retry_left ifconf net0 || goto retry_left set net0/netmask 255.255.255.0 set net0/gateway 172.20.0.12 set net0/ip 172.20.0.14 set keep-san 1 echo Booting image LEFT sanboot iscsi:172.20.0.12::::WINDOW_LEFT || goto retry_left
The problem is on “sanboot iscsi:172.20.0.12::::WINDOW_LEFT” line. The boot fail and stop.
With SANDeploy I see that tries 230 (aprox.) times to obtain the file “WINDOW_LEFT” but after that it stop and “freeze” the ipxe.
I have a .vhd image called WINDOW_LEFT.
I check if i have ping with 172.20.0.12
Best.
FC -
@frsaincpel This question is probably better suited for the iPXE community forum than FOG. FOG doesn’t use / do san booting so I don’t think you will find your answer here. I can say for me it is surely an interesting topic though.
-
@george1421 Thank you for your answer. The iPXE forum is closed for new members so i cannot post it, but thank you so much for your time!
Best,
FC -
@FrSainCpel Maybe try their mailing list: https://lists.ipxe.org/mailman/listinfo/ipxe-devel
-
@frsaincpel As I said I find this interesting, and interesting things bug me until I can sort it out.
First to your point you might be able to post on the github site and see if a dev there will help.
Secondly I found this post: https://gist.github.com/rikka0w0/987d3e03c6f133802318669e85836870
#!ipxe prompt --key 0x02 --timeout 2000 Press Ctrl-B for the iPXE command line... && shell || set keep-san 1 sanhook iscsi:192.168.x.x:tcp:3260:1:net.cszombie.au:windows kernel wimboot initrd boot/bcd BCD initrd boot/boot.sdi boot.sdi initrd http://192.168.x.x:PORT/sources/boot.wim boot.wim boot
I know this method (without the sanhook) for pxe booting into a winpe environment. Then I looked into sanhook command on the ipxe site. https://ipxe.org/cmd/sanhook
to find this:
sanhook --drive 0x81 ${root-path} sanboot --no-describe iscsi:10.0.4.1:::1:iqn.2010-04.org.ipxe.dolphin:liveinstall
The --drive 0x81 is a bios thing. So I would make sure your device that you are booting is in bios mode. Also look at the sanboot line, your sanboot line seems to be missing stuff (my initial thought when I first saw your post, like the iqn).
Edit1 ref: https://audiophilestyle.com/forums/topic/26705-diskless-windows-10-pc-setup-procedure/
quote: - setting gateway address to 0.0.0.0 is a workaround to avoid Windows 10 suffering an “INACCESSIBLE BOOT DEVICE” blue screen crash during boot interesting flaw in Windows. This is the third reference I found about setting the gateway to nothing. Another thread found "
"about the below :
set gateway 0.0.0.0it seemed to be inneffective from to time so i went for the below syntax :
clear net0.dhcp/gateway:ipv4" -
@george1421 Thank you so much for your time. I will check and try all the info that you give me !
EDIT:
“So I would make sure your device that you are booting is in bios mode.” Yes is in BIOS mode.I’m new in the “iPXE world” so i will try first the gateway config and add the :
iscsi:<IP>:::1:iqn.2010-04.org.ipxe.dolphin:<TARGET>In this line code, what is “dolphin” ? <SERVER NAME> or it’s depend if im using Win10, Win7 or other as Target?
Best,
FC -
@frsaincpel said in iPXE problem with sanboot line:
iqn.2010-04.org.ipxe.dolphin
It needs to be read as a whole. Its all part of the iqn. The iqn in this context is the product of the LUN you want to connect to.
This is an issue/knowledge about iSCSI and not specifically with iPXE since iPXE is a consumer of the iqn.
For example here is the iqn for a target on a synology NAS.
iqn.2000-01.com.synology:usnycapp001.target.b0baaf47a3
Here is the iqn for a linux iscsi target]
iqn.2003-01.org.linux-iscsi.usnycapp103.x8664:sn.123c1c0fb7b2
Finally here is an example iqn for a windows based iscsi initiator (akin to what iPXE is doing)
iqn.1991-05.com.microsoft:usnycapp053.domain.com
In “MS Windows” terms initiator == client computer, target == server and share name.
-
@FrSainCpel
It appears to me that your block ‘:retry_left’ will cause an infinite loop if it failed to boot.The line ‘set keep-san 1’ is no longer necessary when sanhooking (or sanboot) is used .
As you are setting up an static IP, you’d need to do an ‘ifopen net0’ first’. With dhcp, it does that for you.
I’d suggest put the net0/ip first before the netmask.
Lastly, @george1421 is correct, you’d need
set net0/gateway 0.0.0.0