1

Есть ли команда для терминала OS X, которая показывает вам только самые важные сведения о конфигурации IP-адреса вашей машины? Я знаю, что есть "ifconfig", но это вызывает кучу (в большинстве случаев) ненужной информации. Я просто хочу узнать мой текущий IP, маску подсети, шлюз по умолчанию и DNS.

ОБНОВИТЬ


Вывод netstat -rn

Axels-MacBook-Air:~ axelkennedal$ netstat -rn
Routing tables

Internet:
Destination        Gateway            Flags        Refs      Use   Netif Expire
default            10.164.192.1       UGSc           75        0     en0
10.164.192/19      link#4             UCS             3        0     en0
10.164.192.1       c0:62:6b:e2:7a:c0  UHLWIir        76       20     en0   1150
10.164.206.216     127.0.0.1          UHS             0       25     lo0
10.164.223.255     ff:ff:ff:ff:ff:ff  UHLWbI          0       14     en0
127                127.0.0.1          UCS             0        0     lo0
127.0.0.1          127.0.0.1          UH              4      644     lo0
169.254            link#4             UCS             0        0     en0

Internet6:
Destination                             Gateway                         Flags         Netif Expire
::1                                     ::1                             UHL             lo0
fe80::%lo0/64                           fe80::1%lo0                     UcI             lo0
fe80::1%lo0                             link#1                          UHLI            lo0
fe80::%en0/64                           link#4                          UCI             en0
fe80::7ed1:c3ff:fef1:9b1f%en0           7c:d1:c3:f1:9b:1f               UHLI            lo0
ff01::%lo0/32                           ::1                             UmCI            lo0
ff01::%en0/32                           link#4                          UmCI            en0
ff02::%lo0/32                           ::1                             UmCI            lo0
ff02::%en0/32                           link#4                          UmCI            en0

2 ответа2

0

Надеюсь это поможет. Я не думаю, что есть одна команда, чтобы показать эту информацию.

ifconfig en1 | grep inet && scutil --dns | grep nameserver && netstat -nr | grep default
0

Насколько я знаю, нет единой команды, которая даст вам всю необходимую информацию. Вам нужно будет запустить несколько разных. Возможно, самый простой подход - создать небольшой скрипт, который сделает это за вас. Я пишу это в Linux с помощью команды ipconfig которая недоступна в Linux, поэтому, скорее всего, в ней будут некоторые ошибки, пожалуйста, дайте мне знать, и я постараюсь решить их.

#!/bin/bash

## Get the ip
ip=$(ipconfig getifaddr en0)

## Get the DNS server(s), this assumes Wi-Fi
dns=$(networksetup -getdnsservers Wi-Fi)

## Get the gateway
gateway=$(netstat -rn | awk 'NR==3{print $2}')

## And the netmask
mask=$(netstat -rn | awk 'NR==4{print $3}')

## Pretty print
cat<<EOF
IP      : $ip
Gateway : $gateway
Netmask : $mask
DNS     : $dns
EOF

Сохраните этот скрипт как netinfo.sh или что-то еще в каталоге, который находится в вашем $PATH (например, /usr/local/bin), сделайте его исполняемым (chmod a+x /usr/local/bin/netinfo.sh), а затем запустить его:

$ netinfo.sh

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .