Làm cách nào để liệt kê tất cả các Card mạng (Debian) được cài đặt vật lý?


14

"Máy chủ chuyên dụng" của tôi phải cài đặt hai NIC nhưng tôi chỉ có thể tìm thấy một.

Câu hỏi của tôi: Những lệnh và phương thức nào khác có sẵn để kiểm tra có bao nhiêu card mạng được cài đặt trên máy chủ của tôi

lspci | grep Ethernet

Có bất kỳ lệnh / phương thức khác có sẵn?


Bạn có quyền truy cập vật lý vào máy chủ? Bạn có thể xác nhận rằng bất kỳ thẻ mở rộng được ngồi đúng cách? Có phải tất cả các NIC từ cùng một nhà sản xuất?
Tok

Xin chào. Cảm ơn câu trả lời của bạn. Không phải các NIC không phải từ cùng một nhà sản xuất (một nên từ intel và khác từ realtek). => Câu hỏi của bạn nghe có vẻ thú vị. Điều gì có thể là hiệu ứng / kết quả nếu các thẻ từ các nhà sản xuất khác nhau? Và tôi không có quyền truy cập vật lý vào máy chủ và không biết liệu chúng có được cài đặt chính xác không. cảm ơn. jens.
jens

Câu trả lời:


14

Bạn có thể sử dụng lshw để xem tất cả các thiết bị trên máy. Để chỉ xem các thiết bị mạng, hãy nhập:

lshw -class network

4
lshw không phải là một phần của thiết lập Debian mặc định.
Jean-Marc Liotier

1
Tôi thấy điều này hơi quá, tôi sẽ chỉ là: ip link show
Matías

Điều này cũng hiển thị các giao diện cầu, không phải là vật lý.
Xorax

11

Đối với Ethernet:

ls -d /sys/class/net/eth* | wc -l

1
Điều này không hoạt động nói chung vì tên thiết bị ethernet không phải bắt đầu bằng eth. Nhiều (tất cả?) Các bản phân phối linux chính hiện đang sử dụng "tên giao diện ethernet có thể dự đoán" với systemd, dẫn đến các tên giao diện có dây như en0 hoặc enp0s25, vì vậy tìm kiếm eth * sẽ bỏ lỡ chúng.
rajb245

2
Hãy thử cái này : $ ls -l /sys/class/net/ | grep -v virtual. Nó lọc tất cả các giao diện mạng ảo ra. Hoạt động trên Ubuntu chạy trong Hộp ảo.
kwarnke

11

ip link show sẽ liệt kê mọi thứ trông giống như giao diện mạng.


10
find /sys/class/net -type l -not -lname '*virtual*' -printf '%f\n'

Chỉ hiển thị các giao diện liên quan đến một NIC vật lý.

Đã cố gắng tìm một typetùy chọn để ip link showhiển thị phi logic, nhưng than ôi:

ip link help 2>&1 | grep -A10 'TYPE :='
TYPE := { vlan | veth | vcan | dummy | ifb | macvlan | macvtap |
          bridge | bond | ipoib | ip6tnl | ipip | sit | vxlan |
          gre | gretap | ip6gre | ip6gretap | vti | nlmon |
          bond_slave | ipvlan | geneve | bridge_slave | vrf }

Nó dường như là một điều ip link showkhông thể làm. Ít nhất không phải không dùng đến một kịch bản đầu tiên liệt kê từng điều ở trên và sau đó grep -vchống lại lần chạy cuối cùng mà không typeđược chỉ định.


Điều này chắc chắn có vẻ như một cái gì đó ip linkcó thể xử lý. Nếu sử dụng nhiều giao diện ảo (nói để bắc cầu hoặc vlan) và đặc biệt là nếu các giao diện ảo này đã được đổi tên.
Centimane

7

/proc/net/devtập tin có chi tiết trên tất cả các giao diện. ví dụ

$ cat /proc/net/dev
Inter-|   Receive                                                |  Transmit
 face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
    lo:    3562      60    0    0    0     0          0         0     3562      60    0    0    0     0       0          0
 wlan0: 2491781197 2034240    0    0    0     0          0         0 261797069 1502752    0    0    0     0       0          0
  eth0:       0       0    0    0    0     0          0         0        0       0    0    0    0     0       0          0

Như bạn có thể thấy, nhiều cột và chi tiết không dễ đọc khi bạn catgửi tệp, vì vậy tôi khuyên bạn nên sử dụng ifconfiglệnh đọc tệp đó và định dạng đầu ra độc đáo.

Để liệt kê tất cả các giao diện sử dụng

/sbin/ifconfig -a

nó sẽ hiển thị cho bạn các giao diện mạng chưa được định cấu hình / xuống cũng như các giao diện được cấu hình và hoạt động, như đã đọc từ/proc/net/dev


1
modprobe -c |grep 'eth[0-9]'

hiển thị trình điều khiển thiết bị thực được sử dụng cho từng thiết bị ethernet


... nhưng các thiết bị ethernet có thể được đặt tên khác
Joril
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.