Host device: Dell Optiplex 7070
ESXi Version: vSphere 6.7u3
NIC Card: TP-Link TG-3468 rev 2

Notes:

  • Make sure the NIC card is REV 2.0 (It will be written on the card itself).
  • Make sure to use an ESXi version less than vSphere 7. (*)
  • I installed the NIC card before installing ESXi.
  • But after installing ESXi it did not show the network card. (Networking >> Physical NICs)
  • Onboard ethernet port worked fine.

So I had to check which ethernet ports are detected by going to terminal.

Enable SSH:
Login to host web console.
Host >> Actions >> Services >> Enable Secure Shell (SSH)

Command to check working NICs:

$ esxcli network nic list

In my case the TP-Link NIC was not listed by the above command.
So I needed to find the Vendor and Device ID to download a compatible driver.

Command to get NIC info:

$ lspci -v | grep "Class 0200" -B 1

Which gave me some info about the NIC card:
"0000:02:00.0 TP-Link Gigabit ethernet : Realtek ……. ...... Class 0200: 10ec:8168"

What we care about is the last part: 10ec:8168
Go to the 'vibsdepot' website and search for this ID.

Download VIB file:
https://vibsdepot.v-front.de/wiki/index.php/Net55-r8168
(Compatible With: ESXi 5.5, ESXi 6.0, ESXi 6.5, ESXi 6.7)

After downloading, upload the VIB file to the datastore:
Storage >> datastore_name >> Datastore Browser >> Upload
(In my case I uploaded to datastore1.)

By default, vSphere will not accept drivers that are not signed by VMware.
We need to change the acceptance level.

Allow community supported VIBs:

$ esxcli software acceptance set –level=CommunitySupported

Install the downloaded VIB:

$ esxcli software vib install -v /vmfs/volumes/datastore1/net55-r8168-8.045a-napi.x86_64.vib

Check list of installed VIBs:

$ esxcli software vib list

(*) Note: This driver will not work on vSphere 7.
In version 7, VMware removed a package called VMKlinux.
Realtek 8168 chip needs the legacy drivers that work with VMKlinux.

Reference: https://williamlam.com/2020/03/homelab-considerations-for-vsphere-7.html