ESXi/ESX host loses network connectivity after adding new NICs or an upgrade (2019871)


 

 

 

Last Updated: ‎5‎/‎25‎/‎2017Categories: Informational
Symptoms
  • The ESX\ESXi host loses connectivity after applying a BIOS, firmware, or patch upgrade
  • The ESX\ESXi host loses connectivity after adding new NICs
 
Cause
This issue is caused by NIC enumeration that occurs after applying a BIOS, firmware, patch upgrade or adding new NIC’s.

Virtual switches which provide network communication to the outside world are configured based on the VMNIC names. If all of the NICs are renamed, the vSwitches route packets to interfaces that no longer exist.

The PCI ID to VMNIC numbering relationship is determined at boot time and is automatically entered into the esx.conf file located at /etc/vmware/ for persistence. The ESX/ESXi host first scans the seg number, then the bus number, the slot number, and finally the function number. This order ensures that ports on the same multi-port NIC are numbered sequentially.

When ESXi/ESX is installed, the VMNIC order is sequential. This changes over time as NICs are removed and other NICS are added. This results in VMNIC ordering that is undesirable and not in sync with the naming convention on other ESX/ESXi hosts.

To view the VMNIC assignment connect to the host with an SSH session. For more information, see Using ESXi Shell in ESXi 5.x (2004746).

Open the esx.conf file located at /etc/vmware/ with a text editor. For information, see Editing configuration files in VMware ESXi and ESX (1017022) .

The file displays similar to:

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

/device/000:002:00.0/vmkname = "vmnic0"
/device/000:002:02.0/vmkname = "vmnic1"
/device/000:002:03.0/vmkname = "vmnic2"
/device/000:002:04.0/vmkname = "vmnic3"

 

 

Run esxcfg-nics –l to list out the currently installed NIC’s.
You see the output similar to:

 

vmnic0 0000:02:00.00 e1000 Up 1000Mbps Full xx:xx:xx:xx:xx:xw 1500 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
vmnic1 0000:02:02.00 e1000 Up 1000Mbps Full xx:xx:xx:xx:xx:xx 1500 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
vmnic2 0000:02:03.00 e1000 Up 1000Mbps Full xx:xx:xx:xx:xx:xy 1500 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)
vmnic3 0000:02:04.00 e1000 Up 1000Mbps Full xx:xx:xx:xx:xx:xz 1500 Intel Corporation 82545EM Gigabit Ethernet Controller (Copper)

 

 

When a NIC device is removed from a server, esx.conf entry can only be removed at boot time. This means, to reuse a device name, boot the server, without that device cannot delete its entry and free up the device name. On the next boot, the name is once again available for allocation.

 

Scenarios that cause VMNIC numbering to change:

  • A server is shut down and a NIC is moved to another PCI slot.
  • A server is shut down and a NIC is removed and replaced with another NIC in a different PCI slot.

Scenario that will maintain VMNIC numbering order:

  • A server is shut down and a NIC replaced with another NIC in the same PCI slot.
  • A server is shut down and a NIC removed. The server is booted and shut down again. A NIC is then added in the same or a new PCI slot.
 
Resolution

To reorder the numbering on a host which has an undesired VMNIC numbering order on ESXi/ESX host versions 4.0 through 5.1:

  1. Place the ESXi/ESX host into maintenance mode.
  2. Open the esx.conf file located at /etc/vmware/ with a text editor. Find all lines similar to:

    /device/000:002:01.0/vmkname = "vmnic0"
    /device/000:002:03.0/vmkname = "vmnic1"


    Edit these lines to rearrange the relation between PCI addresses (numbers similar to 000:002:00.0) and vmnic names. For example, to swap vmnic0 and vmnic1 in the above example, you would change the lines to:

    /device/000:002:01.0/vmkname = "vmnic1"
    /device/000:002:03.0/vmkname = "vmnic0"


     
  3. Find all lines similar to:

    /net/pnic/child[0000]/mac = "00:0c:29:6c:4c:f8"
    /net/pnic/child[0000]/name = "vmnic0"
    /net/pnic/child[0000]/virtualMac = "00:50:56:5c:4c:f8"
    /net/pnic/child[0001]/mac = "00:0c:29:6c:4c:02"
    /net/pnic/child[0001]/name = "vmnic1"
    /net/pnic/child[0001]/virtualMac = "00:50:56:5c:4c:02"


    Edit the names here in exactly the same way you did in step 2, so that the file still has the correct relation between physical NICs and their MAC addresses. For example, if you swapped vmnic0 and vmnic1 in step 2, you would change the lines to:

    /net/pnic/child[0000]/mac = "00:0c:29:6c:4c:f8"
    /net/pnic/child[0000]/name = "vmnic1"
    /net/pnic/child[0000]/virtualMac = "00:50:56:5c:4c:f8"
    /net/pnic/child[0001]/mac = "00:0c:29:6c:4c:02"
    /net/pnic/child[0001]/name = "vmnic0"
    /net/pnic/child[0001]/virtualMac = "00:50:56:5c:4c:02"


     
  4. Find all lines similar to:

    /net/vmkernelnic/child[0000]/macFromPnic = "vmnic0"
    /net/vmkernelnic/child[0000]/mac = "00:0c:29:6c:4c:f8"


    If you changed any of the NICs that are listed in a macFromPnic line, change the corresponding mac line to have the correct MAC address for the new NIC. For example, if you swapped vmnic0 and vmnic1 in step 2, you would change the lines to:

    /net/vmkernelnic/child[0000]/macFromPnic = "vmnic0"
    /net/vmkernelnic/child[0000]/mac = "00:0c:29:6c:4c:02"


     
  5. Save the file and exit from the text editor.
  6. Shut down and reboot the ESXi/ESX host.
  7. Adjust the assignment of the renamed vmnic devices to the virtual switches if necessary.
  8. Exit maintenance mode on the ESXi/ESX host.

Note:

This article does not apply to the ESXi 5.5 and later versions. Instead, see How VMware ESXi 5.5 and 6.0 determine the order in which names are assigned to devices (2091560).

 
Related Information

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
» esxi vSwitch is disconnect NIC physicsal is down : ESXi/ESX host loses network connectivity after adding new NICs or an upgrade (2019871) 졸리운_곰 2018.12.12 66
739 2019년도 국가전문자격시험 시행일정 등 사전공고 file 졸리운_곰 2018.12.05 54
738 도스 허큘리스 모드에서의 GW-BASIC 그래픽 프로그래밍 file 졸리운_곰 2018.12.04 502
737 <도스박스 사용법> dosbox.conf - [dosbox] (도스박스 한글화, 그래픽 카드, 램 용량 등) file 졸리운_곰 2018.12.04 396
736 2019년도 국가기술자격검정 시행공고 file 졸리운_곰 2018.12.02 58
735 DOS 게임을 telnet (ssh) 방식으로 접속 : Creating a DOS Games Server 졸리운_곰 2018.12.02 53
734 웹 브라우저에서 윈도우 95 구동하기 file 졸리운_곰 2018.12.01 55
733 피벗 테이블 file 졸리운_곰 2018.11.30 47
732 142_엑셀 피벗테이블 만들기 (2) file 졸리운_곰 2018.11.30 43
731 141_초급 강좌 – 피벗 테이블 기본(1) file 졸리운_곰 2018.11.30 52
730 Visual Studio Code 파이썬 개발환경 구축 file 졸리운_곰 2018.11.29 37
729 하이퍼레저 페브릭에 대하여 잠깐 알아보자 [펌] file 졸리운_곰 2018.11.27 59
728 VBA에서 Google 스크립트로 변경 : From VBA to Google Apps Script 졸리운_곰 2018.11.27 44
727 vba 에서 gas (google apps script)로 변환 Simplifying Migration from VBA to Google Apps Script 졸리운_곰 2018.11.27 108
726 엑셀 숫자 연속 번호 매기기 방법! file 졸리운_곰 2018.11.04 42
725 “정말 아무것도 모르는” 엑셀 초보자를 위한 핵심 키보드 단축키 15개 file 졸리운_곰 2018.11.04 262
724 수학 / 수치해석 라이브러리 모음 졸리운_곰 2018.11.04 87
723 구글이 만든 Docker Container Orchestration 툴, Kubernetes 소개 file 졸리운_곰 2018.11.03 70
722 GPL·AGPL·MPL…한눈에 보는 오픈소스SW 라이선스 file 졸리운_곰 2018.10.31 57
721 리모릭스 개발 이야기 (Xamarin 응용개발기 프로젝트) file 졸리운_곰 2018.10.17 40
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED