2010-04-21 24 views

Répondre

10

Essayez un "arp -a" et recherchez votre propre nom d'hôte. (Cela fonctionne pour moi sur la machine Solaris 9 Je l'ai essayé, mais votre kilométrage peut varier.)

+0

Merci pour ce David - il a fonctionné magnifiquement – ppower66

+1

Ou "arp $ (hostname) | cut -d '' -f4". –

+1

N'affiche pas les cartes non configurées – Envite

13

/usr/bin/netstat pn | grep SP

+1

N'affiche pas les cartes non configurées – Envite

5

Je sais que c'est une question ancienne, mais une autre option est:

/usr/sbin/prtpicl -c network -v 

le champ :local-mac-address vous donnera ce dont vous avez besoin. Vous pourrez également extraire les adresses MAC des interfaces désactivées. Vous pouvez identifier le port par les valeurs :instance et :driver-name. Je pense que cela ne fonctionne que sur les plates-formes SPARC, et non sur x86 Solaris, mais pas certain.

+0

Celui-ci montre les cartes non-configurées, mais pas de noms de cartes. Cependant, ceux-ci peuvent être extraits de: instance et: driver-name – Envite

+0

Cela ne semble pas fonctionner sur mon installation de Solaris 11 x86 - je n'ai pas du tout d'adresses MAC, peu importe les arguments que je passe à 'prtpicl'. –

0

Essayez "dladm" commande avec sous-commande "show-Phys" avec l'option -m pour afficher la liste des adresses MAC:

$ dladm show-phys -m 
0
dladm show-linkprop -p mac-address 

est le documented, definitive Solaris 11 answer (en septembre 2017):

Vérifiez les adresses MAC de toutes les interfaces du système.

...

# 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 -- 

Aucun des autres réponses sont garantis pour renvoyer l'adresse MAC réelle de toutes les cartes réseau sous Solaris 11.

Sur mon installation de Solaris 11, prtpicl n » t retourner n'importe quelle adresse MAC, peu importe les arguments que je lui donne.

arp -an ne fait même pas toutes les cartes réseau physiques configurées:

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 produit des résultats identiques.

aggr0 est un lien agrégé de net0 et net1, qui sont physiquement /dev/bge0 et /dev/bge1. Alors, que montre dladm show-phys -m?

dladm show-phys -m montre l'adresse MAC de aggr0 pour les net0 et net1, pas l'adresse MAC des cartes réseau physiques sous-jacents:

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 

Eh bien, au moins cela ne nous dit que aggr0 est un lien agrégée à l'aide net0 et net1, mais l'adresse MAC des deux net0 et net1 est l'adresse MAC de aggr0, pas l'adresse MAC de carte réseau physique réelle.

Mais dladm show-linkprop -p mac-address montre

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 -- 

En utilisant awk et sort pour afficher uniquement l'adresse MAC par défaut de chaque carte réseau:

dladm show-linkprop -p mac-address | grep -v LINK | awk '{ print $1 " " $6 }' | sort 

produit

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 

Notez que l'adresse MAC par défaut de aggr0 est l'adresse MAC réelle de net0//dev/bge0, mais c'est seulement parce que lorsque j'ai créé le lien agrégé je n'ai pas pris la peine d'attribuer une adresse MAC différente et je l'ai laissé par défaut, per the create-aggr section of the dladm man page étant sélectionné parmi l'une des interfaces qui font partie de l'agrégation.