على Solaris ، هل هناك أمر للحصول على عنوان MAC لبطاقة Ethernet دون أن يكون جذرًا
سؤال
على Solaris ، هل هناك أمر يمكنني تشغيله للحصول على عنوان MAC لبطاقة Ethernet دون تشغيل "/sbin/ifconfig -a" كجذر. تشغيل /sbin /ifconfig -a كمستخدم غير جذر يترك عنوان MAC - GO Figure!
شكرًا،
بول
المحلول
جرب "arp -a"
, ، وابحث عن اسم المضيف الخاص بك. (هذا يعمل بالنسبة لي على آلة Solaris 9 التي جربتها ، لكن الأميال قد تختلف.)
نصائح أخرى
/usr/bin/netstat -pn | grep sp
أعلم أن هذا سؤال أقدم ، لكن خيار آخر هو:
/usr/sbin/prtpicl -c network -v
ال :local-mac-address
الحقل سوف يعطيك ما تحتاجه. ستتمكن أيضًا من سحب Macs للواجهات المعوقة.
يمكنك تحديد المنفذ بواسطة :instance
و :driver-name
القيم. أعتقد أن هذا يعمل فقط على منصات SPARC ، وليس X86 Solaris ، ولكن غير مؤكد.
جرب أمر "DLADM" مع اللقب الفرعي "show -phys" مع خيار -M لمشاهدة قائمة عناوين MAC:
$ dladm show-phys -m
dladm show-linkprop -p mac-address
هل إجابة موثقة ، سولاريس 11 (اعتبارًا من سبتمبر 2017):
تحقق من عناوين MAC لجميع الواجهات على النظام.
...
# dladm show-linkprop -p mac-address LINK PROPERTY PERM VALUE DEFAULT POSSIBLE net0 mac-address rw 8:0:20:0:0:1 8:0:20:0:0:1 -- net1 mac-address rw 8:0:20:0:0:1 8:0:20:0:0:1 -- net3 mac-address rw 0:14:4f:45:c:2d 0:14:4f:45:c:2d --
لا يتم ضمان أي من الإجابات الأخرى لإعادة عنوان MAC الفعلي لجميع NICs على Solaris 11.
على تثبيت Solaris 11 الخاص بي ، prtpicl
لا يعيد أي عنوان MAC بغض النظر عن الحجج التي أعطيها.
arp -an
لا يظهر حتى جميع NIC المادية المكوّنة:
Net to Media Table: IPv4
Device IP Address Mask Flags Phys Addr
------ -------------------- --------------- -------- ---------------
net2 224.0.0.251 255.255.255.255 S 01:00:5e:00:00:fb
aggr0 224.0.0.251 255.255.255.255 S 01:00:5e:00:00:fb
aggr0 192.168.1.92 255.255.255.255 60:6c:66:4f:c5:c7
aggr0 192.168.1.43 255.255.255.255 b8:88:e3:f5:4c:0b
aggr0 192.168.1.45 255.255.255.255 02:08:20:93:0b:d3
net2 192.168.1.35 255.255.255.255 SPLA 00:0e:0c:72:9f:6b
net2 192.168.1.1 255.255.255.255 70:f1:96:19:5b:88
aggr0 192.168.1.5 255.255.255.255 SPLA 00:14:5e:1b:14:0a
aggr0 192.168.1.4 255.255.255.255 00:1d:09:07:5a:93
aggr0 192.168.1.6 255.255.255.255 00:14:5e:2a:75:36
aggr0 192.168.1.25 255.255.255.255 00:11:25:90:d0:07
aggr0 192.168.1.251 255.255.255.255 00:c0:b7:d2:00:60
aggr0 192.168.1.244 255.255.255.255 00:10:75:07:55:94
net2 192.168.1.244 255.255.255.255 00:10:75:07:55:94
net2 224.0.0.22 255.255.255.255 S 01:00:5e:00:00:16
aggr0 224.0.0.22 255.255.255.255 S 01:00:5e:00:00:16
aggr0 192.168.1.151 255.255.255.255 4c:66:41:af:e8:fc
net2 192.168.1.151 255.255.255.255 4c:66:41:af:e8:fc
netstat -pn
ينتج نتائج متطابقة.
aggr0
هو رابط مجمعة لـ net0
و net1
, التي هي جسديا /dev/bge0
و /dev/bge1
. إذن ماذا يفعل dladm show-phys -m
تبين؟
dladm show-phys -m
يعرض عنوان MAC لـ aggr0
لكليهما net0
و net1
, ، وليس عنوان MAC للأشخاص الماديين الأساسيين:
LINK SLOT ADDRESS INUSE CLIENT
net1 primary 0:14:5e:1b:14:a yes aggr0-net1
vboxnet0 primary 8:0:27:4e:ea:4d no --
net0 primary 0:14:5e:1b:14:a yes aggr0-net0
net2 primary 0:e:c:72:9f:6b yes iprb0
حسنًا ، على الأقل هذا يخبرنا بذلك aggr0
هو رابط مجمعة باستخدام net0
و net1
, ، لكن عنوان ماك لكليهما net0
و net1
هو عنوان MAC لـ aggr0
, وليس عنوان NIC Mac الفعلي الفعلي.
ولكن dladm show-linkprop -p mac-address
عروض
LINK PROPERTY PERM VALUE EFFECTIVE DEFAULT POSSIBLE
net1 mac-address rw 0:14:5e:1b:14:a 0:14:5e:1b:14:a 0:14:5e:1b:14:b --
vboxnet0 mac-address rw 8:0:27:4e:ea:4d 8:0:27:4e:ea:4d 8:0:27:4e:ea:4d --
net0 mac-address rw 0:14:5e:1b:14:a 0:14:5e:1b:14:a 0:14:5e:1b:14:a --
net2 mac-address rw 0:e:c:72:9f:6b 0:e:c:72:9f:6b 0:e:c:72:9f:6b --
estub0 mac-address ? ? ? ? ?
aggr0 mac-address rw 0:14:5e:1b:14:a 0:14:5e:1b:14:a 0:14:5e:1b:14:a --
vnic0 mac-address rw 2:8:20:da:88:79 2:8:20:da:88:79 2:8:20:da:88:79 --
vnic1 mac-address rw 2:8:20:31:af:de 2:8:20:31:af:de 2:8:20:31:af:de --
vnic2 mac-address rw 2:8:20:fb:4:e7 2:8:20:fb:4:e7 2:8:20:fb:4:e7 --
vboxbridge0 mac-address ? ? ? ? ?
samba/net0 mac-address rw 2:8:20:93:b:d3 2:8:20:93:b:d3 2:8:20:93:b:d3 --
استخدام awk
و sort
لعرض عنوان MAC الافتراضي لكل NIC:
dladm show-linkprop -p mac-address | grep -v LINK | awk '{ print $1 " " $6 }' | sort
ينتج عنه
aggr0 0:14:5e:1b:14:a
estub0 ?
net0 0:14:5e:1b:14:a
net1 0:14:5e:1b:14:b
net2 0:e:c:72:9f:6b
samba/net0 2:8:20:93:b:d3
vboxbridge0 ?
vboxnet0 8:0:27:4e:ea:4d
vnic0 2:8:20:da:88:79
vnic1 2:8:20:31:af:de
vnic2 2:8:20:fb:4:e7
لاحظ أن عنوان MAC الافتراضي لـ aggr0
هو عنوان MAC الفعلي لـ net0
//dev/bge0
, ، ولكن هذا فقط لأنه عندما أنشأت الرابط الإجمالي ، لم أكن أزعج نفسي بتعيين عنوان MAC مختلف وتركته الافتراضي ، وهو ما لكل create-aggr
قسم من dladm
صفحة الرجل تم اختياره من أحد الواجهات التي تشكل جزءًا من التجميع.