2014-06-05, 18:06
Hello,
Firstly, I must admit network booting etc is quite new to me so I'm afraid to say I am dabbling a little out of my depth here, although I hope that doesn't preclude from some pointers to get me on track.
I have a windows 7 machine that is running a software based iSCSI target - the free edition of the StarWind software. The server is also running a http server, from which the ipxe script file is served, along with the Windows PE installation etc. I'm also running a VirtualBox machine without any hard drive attached to it, and within this I am booting from the ipxe.iso which is attached to a SATA CD drive for the VM machine. This all works perfectly fine. I wait for the second CTRL-B prompt within the VM, chain iPXE to the iPXE script on the http server, I can start the Windows PE installation etc. all without issues.
What I'm wanting to achieve is install Windows 7 (the files of which are held on the server under \\HomeServer\), once I've booted into Windows PE, and install Windows 7 on the iSCSI target, then be able to network boot from that iSCSI target. I've tried every which way but it would seem that I'm unable to get iPXE to connect to the iSCSI target, however just to confirm that the iSCSI target is actively accepting connections I have connected to the iSCSI target and even mapped it to a drive letter on a separate computer. Just to clear up my understanding, from what I've gathered from various posts, I use sanhook in the iPXE script before starting Windows PE so that when I go to install Windows 7, Windows 7 will see the iSCSI target?
My iPXE script is as follows:
The output I am getting from iPXE is as follows:
I've double checked and the IP address, port, LUN and target IQN are all correct. I have performed a packet trace, with the output given below:
This is the summary of what is captured, although there is obviously more details if required. The StarWind software does indicate though that there is an active connection for a time being. As I say, I'm aware I'm a little out of my depth here, but I would be grateful for any help in sorting this issue out.
Thanks very much.
Firstly, I must admit network booting etc is quite new to me so I'm afraid to say I am dabbling a little out of my depth here, although I hope that doesn't preclude from some pointers to get me on track.
I have a windows 7 machine that is running a software based iSCSI target - the free edition of the StarWind software. The server is also running a http server, from which the ipxe script file is served, along with the Windows PE installation etc. I'm also running a VirtualBox machine without any hard drive attached to it, and within this I am booting from the ipxe.iso which is attached to a SATA CD drive for the VM machine. This all works perfectly fine. I wait for the second CTRL-B prompt within the VM, chain iPXE to the iPXE script on the http server, I can start the Windows PE installation etc. all without issues.
What I'm wanting to achieve is install Windows 7 (the files of which are held on the server under \\HomeServer\), once I've booted into Windows PE, and install Windows 7 on the iSCSI target, then be able to network boot from that iSCSI target. I've tried every which way but it would seem that I'm unable to get iPXE to connect to the iSCSI target, however just to confirm that the iSCSI target is actively accepting connections I have connected to the iSCSI target and even mapped it to a drive letter on a separate computer. Just to clear up my understanding, from what I've gathered from various posts, I use sanhook in the iPXE script before starting Windows PE so that when I go to install Windows 7, Windows 7 will see the iSCSI target?
My iPXE script is as follows:
Code:
#!ipxe
cpuid --ext 29 && set arch amd64 || set arch x86
sanhook iscsi:192.168.0.7:::0:iqn.2008-08.com.starwindsoftware:homeserver-windows7base
kernel /iPXE/wimboot
initrd /iPXE/winpe/${arch}/media/bootmgr bootmgr
initrd /iPXE/winpe/${arch}/media/Boot/BCD BCD
initrd /iPXE/winpe/${arch}/media/Boot/Fonts/segmono_boot.ttf segmono_boot.ttf
initrd /iPXE/winpe/${arch}/media/Boot/Fonts/segoe_slboot.ttf segoe_slboot.ttf
initrd /iPXE/winpe/${arch}/media/Boot/Fonts/segoen_slboot.ttf segoen_slboot.ttf
initrd /iPXE/winpe/${arch}/media/Boot/Fonts/wgl4_boot.ttf wgl4_boot.ttf
initrd /iPXE/winpe/${arch}/media/Boot/boot.sdi boot.sdi
initrd /iPXE/winpe/${arch}/media/sources/boot.wim boot.wim
boot
The output I am getting from iPXE is as follows:
I've double checked and the IP address, port, LUN and target IQN are all correct. I have performed a packet trace, with the output given below:
Code:
Number Time Source Destination Protocol Length Info
1731 27.081398000 192.168.0.38 192.168.0.7 iSCSI 242 Login Command
1732 27.082120000 192.168.0.7 192.168.0.38 iSCSI 178 Login Response (Success)
1735 27.291414000 192.168.0.38 192.168.0.7 iSCSI 326 Login Command
1736 27.291766000 192.168.0.7 192.168.0.38 iSCSI 406 Login Response (Success)
1737 27.291827000 192.168.0.38 192.168.0.7 iSCSI 114 Login Command
1738 27.291951000 192.168.0.7 192.168.0.38 iSCSI 114 Login Response (Success)
1739 27.292015000 192.168.0.38 192.168.0.7 iSCSI 114 SCSI: Test Unit Ready LUN: 0x00
1740 27.292110000 192.168.0.7 192.168.0.38 iSCSI 114 SCSI: Response LUN: 0x00 (Test Unit Ready) (Good)
1742 27.292180000 192.168.0.38 192.168.0.7 iSCSI 114 SCSI: Read Capacity(10) LUN: 0x00
1743 27.292259000 192.168.0.7 192.168.0.38 iSCSI 122 SCSI: Data In LUN: 0x00 (Read Capacity(10) Response Data) SCSI: Response LUN: 0x00 (Read Capacity(10)) (Good)
1744 27.292313000 192.168.0.38 192.168.0.7 iSCSI 114 SCSI: Service Action In(16) LUN: 0x00 READCAPACITY16
1745 27.292387000 192.168.0.7 192.168.0.38 iSCSI 146 SCSI: Data In LUN: 0x00 (Service Action In(16) Response Data) SCSI: Response LUN: 0x00 (Service Action In(16)) (Good)
This is the summary of what is captured, although there is obviously more details if required. The StarWind software does indicate though that there is an active connection for a time being. As I say, I'm aware I'm a little out of my depth here, but I would be grateful for any help in sorting this issue out.
Thanks very much.