Cum afli la ce port de switch este conectat un PC, direct de pe statie, prin LLDP sau CDP
La interventiile pe teren apare des aceeasi problema: prizele de retea nu sunt etichetate, documentatia cablarii lipseste sau este depasita, iar in rack sunt zeci de patch-uri. Trebuie sa aflam rapid in ce switch si in ce port ajunge cablul unui anumit PC, de exemplu pentru a schimba VLAN-ul, a verifica erorile pe port sau a muta un utilizator.
Switch-urile administrabile anunta periodic pe fiecare port informatii despre ele insele, prin protocoalele LLDP (standard, folosit de majoritatea producatorilor) si CDP (specific Cisco). Aceste pachete ajung si la placa de retea a PC-ului. Daca le capturam de pe statie, aflam numele switch-ului, portul exact, VLAN-ul si adresa de management, fara sa intram in rack si fara sa avem acces la switch.
Simptome
- Priza de perete sau patch panel-ul nu are etichete sau etichetele nu corespund realitatii;
- Trebuie identificat portul de switch al unei statii inainte de o modificare de VLAN sau de o mutare;
- Statia are probleme de retea intermitente si vrem sa verificam portul ei pe switch;
- Nu avem acces la consola switch-ului sau nu stim pe care dintre switch-uri ajunge cablul.
Backup
Procedura este doar de citire: capturam pachete, nu modificam nicio configuratie pe statie sau pe switch. Nu este necesar un backup.
Inainte de a incepe, retineti:
- Este nevoie de un cont de Administrator pe statie.
- Statia trebuie sa fie conectata prin cablu. Pe Wi-Fi nu se primesc pachete LLDP sau CDP de la switch.
- Capturarea de trafic pe statia unui client se face doar cu acordul clientului, conform politicii interne de securitate.
Pasul 1 – Aflam adaptorul de retea si adresa MAC a statiei
Intr-o consola PowerShell pornita ca Administrator:
Get-NetAdapter | Where-Object Status -eq 'Up' | Format-Table Name, InterfaceDescription, MacAddress, LinkSpeed -AutoSize
Notam numele adaptorului pe cablu (de exemplu “Ethernet”) si adresa MAC. Adresa MAC este utila la Pasul 5, daca LLDP si CDP nu sunt disponibile.
Pasul 2 – Metoda 1: captura cu Wireshark (cea mai clara)
Daca pe statie se poate instala Wireshark (impreuna cu driverul Npcap, inclus in kit):
- Deschidem Wireshark ca Administrator si selectam adaptorul Ethernet de la Pasul 1.
- In campul de filtru de captura (capture filter) introducem:
ether proto 0x88cc or ether dst 01:00:0c:cc:cc:cc
- Pornim captura si asteptam intre 30 si 90 de secunde. Switch-urile trimit LLDP implicit la 30 de secunde si CDP la 60 de secunde.
- Cand apare un pachet, il selectam si deschidem in panoul de detalii sectiunea “Link Layer Discovery Protocol” sau “Cisco Discovery Protocol”.
Campurile de interes sunt:
- System Name / Device ID – numele switch-ului;
- Port ID / Port Description – portul exact, de exemplu GigabitEthernet1/0/14;
- Port VLAN ID / Native VLAN – VLAN-ul de date al portului;
- Management Address – adresa IP de administrare a switch-ului;
- System Description – modelul si versiunea de firmware.
Pasul 3 – Metoda 2: captura cu pktmon, fara instalare
Pe Windows 10 (versiunea 2004 sau mai noua), Windows 11 si Windows Server 2019/2022/2025 exista utilitarul integrat pktmon. Este util cand pe statia clientului nu avem voie sa instalam programe. Intr-un CMD pornit ca Administrator:
mkdir C:\Temp
pktmon filter remove
pktmon filter add LLDP -d 0x88CC
pktmon filter add CDP -m 01-00-0C-CC-CC-CC
pktmon start --capture --pkt-size 0 --file-name C:\Temp\vecin-switch.etl
Asteptam 90 de secunde, apoi oprim captura si o convertim in format pcapng:
pktmon stop
pktmon etl2pcap C:\Temp\vecin-switch.etl --out C:\Temp\vecin-switch.pcapng
pktmon filter remove
Fisierul vecin-switch.pcapng se copiaza pe laptopul tehnicianului si se deschide in Wireshark. Interpretarea campurilor este cea de la Pasul 2.
Pasul 4 – Metoda 3: modulul PowerShell PSDiscoveryProtocol
Daca statia are acces la PowerShell Gallery, modulul PSDiscoveryProtocol afiseaza rezultatul direct in consola, fara Wireshark:
Install-Module -Name PSDiscoveryProtocol -Scope CurrentUser
$Pachet = Invoke-DiscoveryProtocolCapture -Type LLDP
Get-DiscoveryProtocolData -Packet $Pachet
Pentru un switch Cisco cu CDP activ, inlocuim -Type LLDP cu -Type CDP. Comanda asteapta pana primeste un pachet, deci poate dura pana la un minut. Rezultatul contine direct numele switch-ului, portul, VLAN-ul si adresa de management.
Pasul 5 – Daca nu apare niciun pachet: cautam adresa MAC pe switch
Daca dupa 2 minute de captura nu apare niciun pachet LLDP sau CDP, protocolul este dezactivat pe port sau intre PC si switch exista un echipament care nu il transmite. In acest caz, cautam adresa MAC a statiei (de la Pasul 1) in tabela de adrese a switch-ului principal. Pe Cisco, de exemplu, pentru MAC-ul 00-1A-2B-3C-4D-5E:
show mac address-table address 001a.2b3c.4d5e
Daca portul gasit este un uplink catre alt switch, repetam comanda pe switch-ul urmator, pana ajungem la un port de acces.
Pasul 6 – Notam rezultatul si etichetam priza
Trecem in documentatia clientului corespondenta priza – patch panel – switch – port – VLAN si etichetam priza la fata locului. La urmatoarea interventie nu mai este nevoie de captura.
Impact colateral
Switch-urile neadministrabile (unmanaged) nu trimit LLDP sau CDP. Daca statia este legata printr-un astfel de switch de birou, informatia primita, daca exista, este a switch-ului din amonte, nu a portului real.
Daca PC-ul este conectat prin portul de PC al unui telefon IP, LLDP sau CDP primit poate fi al telefonului, nu al switch-ului.Unele placi de retea de server (de exemplu Intel din seria X710/XL710) au un agent LLDP in firmware care consuma pachetele LLDP inainte sa ajunga la sistemul de operare. In acest caz captura nu arata nimic, chiar daca switch-ul trimite LLDP.
In unele retele LLDP si CDP sunt dezactivate intentionat pe porturile de acces, din motive de securitate. Nu se activeaza pe switch fara acordul administratorului de retea.
Instalarea Wireshark instaleaza si driverul Npcap. Pe statiile cu politici stricte de aplicatii, instalarea poate fi blocata sau poate necesita aprobare. Filtrele pktmon raman active pana sunt sterse. De aceea procedura se incheie cu pktmon filter remove.
Plan de restaurare in caz de nefunctionare
Procedura nu modifica nicio configuratie, deci restaurarea inseamna doar curatarea instrumentelor folosite:
- Daca o captura pktmon a ramas pornita, o oprim si stergem filtrele:
pktmon stop
pktmon filter remove
- Stergem fisierele de captura din
C:\Temp(vecin-switch.etlsivecin-switch.pcapng) dupa ce le-am analizat. - Daca Wireshark si Npcap nu trebuie sa ramana pe statie, le dezinstalam din Settings > Apps > Installed apps.
- Daca am instalat modulul PowerShell, il eliminam:
Uninstall-Module -Name PSDiscoveryProtocol
[mai mult...]