Showing interfaces with ip link is one of the fastest ways to confirm whether a network device exists, whether the kernel considers it up, and which basic link-layer properties are active on a Linux host. This is usually the first check before changing interface state, MTU, or interface names.
The ip link show view comes from iproute2's link-layer inventory. It reports device names, flags, MTU, queue discipline, operational state, and layer-2 addressing, while leaving IP addresses and routes to commands such as ip address show.
Modern systems often list more than simple physical NICs. Containers and network namespaces may show peer suffixes such as eth0@if260, and kernels with tunnel support loaded can show devices such as tunl0 or gre0. Those entries are normal, so the important checks are the target interface name, the UP and LOWER_UP flags, and the reported state.
$ ip link show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
##### snipped #####
11: eth0@if260: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65535 qdisc noqueue state UP mode DEFAULT group default
link/ether 32:cd:bc:30:6b:1b brd ff:ff:ff:ff:ff:ff link-netnsid 0
$ ip -brief link show lo UNKNOWN 00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP> ##### snipped ##### eth0@if260 UP 32:cd:bc:30:6b:1b <BROADCAST,MULTICAST,UP,LOWER_UP>
$ ip link show dev eth0
11: eth0@if260: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65535 qdisc noqueue state UP mode DEFAULT group default
link/ether 32:cd:bc:30:6b:1b brd ff:ff:ff:ff:ff:ff link-netnsid 0
Peer suffixes such as eth0@if260 are common for veth pairs in containers and namespaces; the query still matches the base device name.
state is the kernel's operational state, while flags such as UP and LOWER_UP show administrative enablement and carrier. UNKNOWN is normal on lo and on some virtual devices.