Tìm địa chỉ MAC trong / Proc hoặc một nơi nào đó mặc dù thiết bị liên kết?


9

Có cách nào để lấy địa chỉ MAC gốc cho eth0 và eth1 không?

Một mảng lớn các máy chủ có giao diện liên kết quản lý các kết nối chuyển đổi dự phòng và một giao diện hoạt động sai. Với bond0 hoạt động, cả hai địa chỉ MAC được thay thế và báo cáo giống hệt bởi ifconfig.

Tôi muốn tìm kiếm mảng máy chủ cho địa chỉ MAC tôi tìm thấy trong thiết bị của Cisco.

Tôi sẽ sử dụng dmesg (1) hoặc / var / log / message, nhưng chúng đã được sử dụng trong hàng trăm ngày cho hầu hết các mảng.


Tôi nghĩ rằng không ai khác thực sự hiểu câu hỏi của bạn một cách chính xác, nhưng tôi điều tôi làm. Tôi sẽ xem nếu tôi có thể tìm thấy một cái gì đó và báo cáo lại.
Yanick Girouard

Câu trả lời:


9

Tôi vẫn đang tìm kiếm một lời giải thích "chính thức" hơn, nhưng theo blog này , tệp /proc/net/bonding/${bonding name}sẽ cung cấp địa chỉ mac thực tế cho mỗi NIC trong liên kết (eth0, eth1, v.v.), vì vậy có thể hữu ích hơn.

Hy vọng điều này sẽ giúp!


Đây là nơi tôi sẽ tìm nó
Petter H

8

Trên RHEL / CentOS 6:

# ethtool -P <if>

Permanent address: 00:11:22:33:44:55

Điều này cũng hoạt động.
DigitalRoss

3

HĐH sẽ giữ một danh sách các chi tiết về vật lý trong tệp:

/etc/udev/rules.d/70-persistent-net.rules

Đây là ví dụ của tôi:

# This file maintains persistent names for network interfaces.
# See udev(7) for syntax.
#
# Entries are automatically added by the 75-persistent-net-generator.rules
# file; however you are also free to add your own entries.

# PCI device 0x10ec:0x8168 (r8169)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:23:54:95:74:e5", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

Lưu ý phần "ATTR {address} =="?


Điều này cũng hoạt động.
DigitalRoss

2

Bạn có thể nhận được điều này từ /systhay vì /proc. Ví dụ:

$ cat /sys/class/net/eth0/address
0a:58:ac:16:05:13

Tất cả các giao diện có sẵn được liệt kê dưới netđây:

$ ls /sys/class/net/
eth0  lo

0

Có một vài cách cho cả thiết bị SATANET . Các lệnh như thông tin udevadm cũng sẽ làm điều đó. ifconfig và netstat là tốt. Và danh sách được tiếp tục. Kiểm tra một số liên kết cũ ở trên cho toàn bộ.


-2

Bạn có thể sử dụng arp để tìm địa chỉ MAC

Để tìm nhà sản xuất MAC, Cơ quan đăng ký IEEE giữ một danh sách các tên thương hiệu thuộc và có địa chỉ MAC, sáu địa chỉ đầu tiên trong địa chỉ MAC là tên thương hiệu theo sau là loại và số sê-ri

Tìm kiếm Danh sách OUI / 'company_id' công khai


2
Một giao diện ngoại quan cố ý không hành xử theo cách đó. OP dường như đang tìm kiếm địa chỉ MAC đã được ghi vào EEPROM của phần cứng vật lý của anh ta, một phần của giao diện ngoại quan như vậy. MAC này thoát khỏi giai đoạn 2 khi liên kết được thiết lập.
rackandboneman

-3

dmesg | grep eth0 && dmesg | grep eth1

Bạn có thể lấy các địa chỉ phần cứng được báo cáo cho bất kỳ giao diện nào trước khi trái phiếu được thiết lập.


-3

Nếu bạn không chắc chắn về tên giao diện (xảy ra với CentOS 7), hãy thử: ip addr

và chỉ cần chọn giao diện từ danh sách


Tôi có ấn tượng bạn không thực sự đọc câu hỏi. Nó nêu rõ: Với bond0 hoạt động, cả hai địa chỉ MAC được thay thế và báo cáo giống hệt bởi ifconfig.
kasperd
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.