For most switches it is impossible to see which switch and switch port you are when you are connected to an 'access' port.
Using the Cisco Discovery Protocol or CDP (Cisco) and Link Layer Discovery Protocol or LLDP (Juniper or Dell) you can find out quite a bit of information about the switch that a host is connected to.
Enabling CDP/LLDP on an access port is arguably a security risk (information exposure), so it might not be enabled on your network. You can use the tcpdump command to disassemble CDP/LLDP packets which will usually show information like the name of the switch, its IP address, the switch port connected to, and sometimes the VLAN in use.
For Cisco CDP, assuming the network interface you wish to check is called "eth0":
For Juniper LLDP:# tcpdump -nn -v -i eth0 -s 1500 -c 1 'ether[20:2] == 0x2000'
# tcpdump -nn -v -i eth0 -s 1500 -c 1 '(ether[12:2]=0x88cc or ether[20:2]=0x2000)'
If you found this useful, here's more on the same topic(s) in our blog:
- Installing Linux websm client from HMC version 3.3.6
- Dmidecode
- System-wide separated shell history files for each user and session
- Using tcpdump to monitor DHCP network traffic
- Line numbers in VI
Interested in learning more?