Terminal OSX: Como descobrir a conexão de rede é WIFI ou LAN?

1

Existe uma maneira de descobrir como o sistema está conectado à Internet usando Wifi ou LAN?

    
por Vikas Bansal 08.03.2016 / 11:36

3 respostas

1

Você pode começar com o utilitário networksetup para listar todos os serviços atuais disponíveis:

$~ networksetup -listallnetworkservices
An asterisk (*) denotes that a network service is disabled.
Thunderbolt Ethernet
Display Ethernet
Display FireWire
Wi-Fi
iPhone USB
Bluetooth PAN
Thunderbolt Bridge

Ou você pode listar a ordem de serviço:

$~ networksetup -listnetworkserviceorder
An asterisk (*) denotes that a network service is disabled.
(1) Thunderbolt Ethernet
(Hardware Port: Thunderbolt Ethernet, Device: en5)

(2) Display Ethernet
(Hardware Port: Display Ethernet, Device: en6)

(3) Display FireWire
(Hardware Port: Display FireWire, Device: fw0)

(4) Wi-Fi
(Hardware Port: Wi-Fi, Device: en0)

(5) iPhone USB
(Hardware Port: iPhone USB, Device: en4)

(6) Bluetooth PAN
(Hardware Port: Bluetooth PAN, Device: en3)

(7) Thunderbolt Bridge
(Hardware Port: Thunderbolt Bridge, Device: bridge0)

Em seguida, você pode consultar cada serviço para ver se está conectado / configurado, por exemplo,

$~ networksetup -getinfo Wi-Fi
DHCP Configuration
IP address: 10.0.0.120
Subnet mask: 255.255.255.0
Router: 10.0.0.138
Client ID: 
IPv6: Automatic
IPv6 IP address: none
IPv6 Router: none
Wi-Fi ID: 6c:40:08:a9:62:50
    
por 08.03.2016 / 11:54
0

Eu gosto de usar:

networksetup -listallhardwareports | grep -C1 $(route get default | grep interface | awk '{print $2}')

Verifica qual interface é usada atualmente como rota padrão e, em seguida, procura as informações de hardware.

    
por 08.03.2016 / 12:02
0

Experimente este comando:

networksetup -listnetworkserviceorder | grep -C1 $(netstat -nr | grep ^default | grep -o "\s\S\+$")

Basicamente, ele consiste em netstat :

$ netstat -nr | grep ^default
default            192.168.46.1       UGSc          399        0     en0

que fornece o endereço IP do gateway default por meio do qual você se conecta à Internet. A parte relevante é a última coluna que lhe dá o nome da interface de rede ( en0 ).

Como o OS X está usando o mesmo nome de interface para WiFi e Ethernet com fio (que é diferente para outros Unixes), não é possível distingui-lo pelo seu nome.

Portanto, este comando extra deve dar a você uma pista sobre qual dispositivo é esse:

$ networksetup -listnetworkserviceorder | grep -C1 en0
(3) Wi-Fi
(Hardware Port: Wi-Fi, Device: en0)
    
por 08.03.2016 / 19:37