Intel I218V and Intel I211-AT driver solution for Windows Server 2012 R2
Its appears to be a common problem with this network adapters and server versions of Windows. This post solves problem with Server 2012R2, but it can be used for other versions of Windows Server i.e 2008, 2008R2, 2012 and 2016.
There are now official drivers for Intel I211-AT and Intel I218V. But there are drivers for same adapters with different letter indexes. Idea is simple - Intel separates chips for desktop and server versions, forcing to setup more expensive versions of this chips for servers. I`m not sure if there any serious difference, but Asus use desktop versions for their motherboards since they targets for desktop segment. So its incorrect to blame Asus for not supporting Server versions of Windows on support page.
At the same time many users would like to install Windows server OS on their Asus motherboards. Funny situation - Gigabyte uses cheap Realtek network adapters on their motherboards and have no problems. But Intel adapters are more powerful.
The solution is to edit information in description part of
.inf files of original Intel drivers , so to make installer determine
this drivers as server version. So, in future , you can
download
drivers from Intel site for your Ethernet and manually fix .inf files
to have most recent versions that works with your server.
Solution for I218V can be found on many sites , but I211-AT no so popular but solution is about the same. First of all, after you finish installing Windows Server 2012R2 , prepare your drivers archive (you can download them from Asus or Intel site, you have to download drivers for Windows 8.1 if you plan to use on Server 2012R2).
Unpack the archive you will have to find folder \Intel\PRO1000\Winx64\NDIS64.
Btw, NDIS64 means version of Windows - 6.4 = Windows Blue (8.0, 8.1 etc) including Server 2012R2. So NDIS63 and NDiS62 for previous versions of Windows and Windows Servers. For Windows Server 2008R2 you will need folder NDIS62 (correct me if I am wrong).
There you need to edit .inf files (depends on card you have or both).
e1r64x64.inf is for I211-AT network adapter
e1d64x64.inf is for I218V network adapter
Open this e1r64x64.inf in text editor and lets start:
1) Under the heading [Intel.NTamd64.6.3.1] copy this line (It should be at the bottom of this section);
%E1539NC.DeviceDesc% = E1539.6.3.1, PCI\VEN_8086&DEV_1539
2) Paste the line we copied above under the heading [Intel.NTamd64.6.3] and remove the 6.3.1, so your line of text should look like this;
%E1539NC.DeviceDesc% = E1539, PCI\VEN_8086&DEV_1539
3) Go down to "WINDOWS BLUE for 64-bit EXTENDED PLATFORMS" and look for the Intel(R) I211 Gigabit Network Connection section and copy the 4 sections starting with E1539.
4) Scroll down to "WINDOWS Server Next for 64-bit EXTENDED PLATFORMS" and paste in the 4 sections and as earlier remove the 6.3.1 from the E1539.6.3.1 at the beginning of each section. It should then look like this;
[E1539]
Characteristics = 0x84 ; NCF_HAS_UI | NCF_PHYSICAL
BusType = 5 ; PCI
DelReg = Advanced.DelReg
AddReg = e1r.reg, TcpSeg.reg, ReduceSpeedOnPowerDown.reg, JumboPacket.reg
AddReg = EnableWakeOnManagmentOnTCO.reg
AddReg = Copper.reg, Copper1000.reg
AddReg = Powermgmt.reg, WakeOnSlot.reg, WakeOnLink.reg
AddReg = LLI.reg
AddReg = RSS.reg, RSS2Q.reg
AddReg = EEE.reg
AddReg = ProtocolOffload.reg
AddReg = UninstallW2.reg
CopyFiles = win7.CopyFiles, UninstallProg.CopyFiles
*IfType = 6 ; IF_TYPE_ETHERNET_CSMACD
*MediaType = 0 ; NdisMedium802_3
*PhysicalMediaType = 14 ; NdisPhysicalMedium802_3
[E1539.Services]
AddService = e1rexpress, 2, win7.Service, win7.EventLog
[E1539.CoInstallers]
AddReg = CoInstaller_AddReg, CoInKS.reg
CopyFiles = CoInstaller_CopyFiles
[E1539.HW]
Include = machine.inf
Needs = PciIoSpaceNotRequired
AddReg = MSIX3.reg
Now you can save the edited .inf file. Now e1d64x64.inf file (I218-V):
- Edit the PRO1000\Winx64\NDIS64\e1d64x64.inf
- Remove all 3 Lines of the Section [ControlFlags]
- In Section [Intel.NTamd64.6.3.1] copy the last 8 lines and add them to the bottom of Section [Intel.NTamd64.6.3]
Check how your file will look like:
[Manufacturer]
%Intel% = Intel, NTamd64.6.3, NTamd64.6.3.1
[ControlFlags]
[Intel]
[Intel.NTamd64.6.3.1]
; DisplayName Section DeviceID
; ———– ——- ——–
%E153ANC.DeviceDesc% = E153A.6.3.1, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A.6.3.1, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A.6.3.1, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E153BNC.DeviceDesc% = E153B.6.3.1, PCI\VEN_8086&DEV_153B
%E153BNC.DeviceDesc% = E153B.6.3.1, PCI\VEN_8086&DEV_153B&SUBSYS_00008086
%E153BNC.DeviceDesc% = E153B.6.3.1, PCI\VEN_8086&DEV_153B&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A.6.3.1, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A.6.3.1, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A.6.3.1, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A.6.3.1, PCI\VEN_8086&DEV_155A&SUBSYS_90BA104D
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_00008086
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_00011179
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_90BA104D
%E15A0NC.DeviceDesc% = E15A0.6.3.1, PCI\VEN_8086&DEV_15A0
%E15A0NC.DeviceDesc% = E15A0.6.3.1, PCI\VEN_8086&DEV_15A0&SUBSYS_00008086
%E15A1NC.DeviceDesc% = E15A1.6.3.1, PCI\VEN_8086&DEV_15A1
%E15A1NC.DeviceDesc% = E15A1.6.3.1, PCI\VEN_8086&DEV_15A1&SUBSYS_00008086
[Intel.NTamd64.6.3]
; DisplayName Section DeviceID
; ———– ——- ——–
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00008086
%E153ANC.DeviceDesc% = E153A, PCI\VEN_8086&DEV_153A&SUBSYS_00011179
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00008086
%E155ANC.DeviceDesc% = E155A, PCI\VEN_8086&DEV_155A&SUBSYS_00011179
%E15A0NC.DeviceDesc% = E15A0, PCI\VEN_8086&DEV_15A0
%E15A0NC.DeviceDesc% = E15A0, PCI\VEN_8086&DEV_15A0&SUBSYS_00008086
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_00008086
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_00011179
%E1559NC.DeviceDesc% = E1559.6.3.1, PCI\VEN_8086&DEV_1559&SUBSYS_90BA104D
%E15A0NC.DeviceDesc% = E15A0.6.3.1, PCI\VEN_8086&DEV_15A0
%E15A0NC.DeviceDesc% = E15A0.6.3.1, PCI\VEN_8086&DEV_15A0&SUBSYS_00008086
%E15A1NC.DeviceDesc% = E15A1.6.3.1, PCI\VEN_8086&DEV_15A1
%E15A1NC.DeviceDesc% = E15A1.6.3.1, PCI\VEN_8086&DEV_15A1&SUBSYS_00008086
Also save edited files
So now you have your drivers prepared !
Few steps before installing:
Start cmd with Admin rights and do commands:
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
Then - reboot server.
If you get message that boot options could not be changes because of Secure boot, you need to reboot to BIOS and turn off Security boot (CMS in Boot section of BIOS if you have Asus board). Don`t worry you will be able to enable it back after all.
After reboot you you see text "Test mode" in the bottom right corner.
Now you can install your drivers starting Autorun.exe from drivers folder and install as usual, but you will be warned that drivers are not signed - Install anyway .
After you successfully finish the installation process - you will get both network adapters work !
Don`t forget to turn off test mode start again cmd with Admin rights and do
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING OFF
Enjoy !!
Thanks for the information overclockers.co.uk and many other people who sharing information to solve this "problem" !
Comments
for I218-V you wrote: "copy the last 6 lines".
But when yo look to your picture at [Intel.NTamd64.6.3] you will realise, that the last 8 lines have been copied and pasted!
So, what's right? Last 6 or last 8 lines?
Martin
any chance you can send the files
One question though, do you know if the NDIS64 Driver works with 2016 Servers (specificially Hyper-V Server 2016)? I know it says in the top of your guide but wikipedia says 2016 Server OSs need NDIS66.
I could not find a NDIS66 Version for i211-AT, would it be better to use atlest NDIS65? NDIS65 is missing the [Intel.NTamd64.6.3] part...
Best Regards
Dell Network X Series POE