ethtool Equivalent สำหรับ OS X Lion


16

นอกเหนือจาก ifconfig มีแอพ / สคริปต์สำหรับ OS X Lion ที่ผลิตเอาท์พุต / ข้อมูลที่คล้ายคลึงกับethtoolหรือไม่?

โดยเฉพาะฉันต้องการสอบถามต่อไปนี้:

  • ข้อมูลไดรเวอร์
  • ออนไลน์ / ออฟไลน์
  • ความเร็ว
  • คู่

เอาต์พุตจาก ethtool มีลักษณะดังนี้:

ajc@ajc-3] sudo ethtool eth0|grep Duplex                                                                                                                                                    ~
    Duplex: Full
ajc@ajc-3] sudo ethtool eth0|grep Speed                                                                                                                                                     ~
    Speed: 100Mb/s
ajc@ajc-3] sudo ethtool eth0|grep Link                                                                                                                                                      ~
    Link detected: yes
ajc@ajc-3] sudo ethtool -i eth0                                                                                                                                                             ~
driver: pcnet32
version: 1.32
firmware-version: 
bus-info: 0000:00:03.0

1
ข้อมูลเกี่ยวกับคุณสมบัติที่คุณต้องการจะเป็นประโยชน์ อย่าทำให้เราทำวิจัย - ช่วยเราช่วยคุณ ไม่มีใครควรใส่ใจกับคำตอบของคำถามของคุณมากกว่าที่คุณทำ
jaberg

2
ตามคำแนะนำของคุณรายละเอียดให้
AJ

คำตอบ:


14

เครื่องมือหลักของฉันสำหรับการอ่าน OSX รายละเอียดเกี่ยวกับฮาร์ดแวร์และsystem_profiler ioregสำหรับรายละเอียดส่วนต่อประสานเครือข่ายifconfigเป็นทางออกที่ดีที่สุด สองรายการแรกจะแสดงเส้นทางการเชื่อมต่อของคุณสำหรับข้อมูลฮาร์ดแวร์และซอฟต์แวร์ไดรเวอร์ ในตัวอย่างของคุณสื่อและสถานะให้รายละเอียดส่วนใหญ่ที่คุณระบุไว้

mac:~ me$ ifconfig en0 

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    options=2b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4>
    ether 00:1b:63:a8:33:33 
    inet6 fe80::21b:63ff:fea8:3333%en0 prefixlen 64 scopeid 0x4 
    inet 172.16.1.8 netmask 0xffffff00 broadcast 172.16.1.255
    media: autoselect (100baseTX <full-duplex,flow-control>)
    status: active

mac:~ me$ system_profiler|awk '/^Ethernet Cards/{c=15;next}c-->0'

        ethernet:

          Type: Ethernet Controller
          Bus: PCI
          Vendor ID: 0x10de
          Device ID: 0x0ab0
          Subsystem Vendor ID: 0x10de
          Subsystem ID: 0xcb79
          Revision ID: 0x00b1
          BSD name: en0
          Kext name: nvenet.kext
          Location: /System/Library/Extensions/IONetworkingFamily.kext/Contents/PlugIns/nvenet.kext
          Version: 2.0.17

ในกรณีของคุณคุณกำลังโลภสำหรับดูเพล็กซ์ความเร็วและการเชื่อมโยงและบนฮาร์ดแวร์ Mac คุณสามารถรับข้อมูลทั้งหมดได้ifconfig en0 | egrep [media|status]ตามต้องการ


ฉันตรวจสอบทั้งคำสั่งเหล่านี้และพวกเขาดูเหมือนจะตรวจสอบข้อมูลทั่วทั้งระบบอย่างกว้างขวาง ฉันควรหลีกเลี่ยงถ้าเป็นไปได้ ... ฉันสงสัยว่ามีบางสิ่งที่เน้นเครือข่ายหรือไม่
AJ

2
ฉันไม่เห็นด้วยกับความคิดเห็นนี้คุณสามารถทำซ้ำผลลัพธ์ที่แนะนำของethtoolง่ายๆโดยการเพิ่มคำสั่ง grep ในลักษณะเดียวกับที่คุณทำ ifconfig en0 | grep Media:ป้อนรายละเอียดเช่นเดียวกับ 3 รายการแรกของ ethtool ของคุณในคำสั่งเดียวและไม่มีข้อมูลภายนอกใด ๆ
stuffe

ข้อแตกต่างที่เหลืออยู่เพียงอย่างเดียวคือรายการ macs จะเลือกโดยอัตโนมัติและความเร็วลิงก์ที่ต่อรองและไม่เพียงรายงานความเร็วลิงก์เท่านั้น ไปป์ที่ awk และ cut สามารถช่วยได้
bmike

@stuffe - "สองคำสั่ง" ที่ความคิดเห็นของฉันอ้างถึงคือ system_profiler และ ioreg ฉันยอมรับว่า ifconfig ใช้ทรัพยากรน้อยลง
AJ

4

บางทีการตั้งค่าเครือข่ายอาจให้ข้อมูลที่คุณต้องการ:

networksetup -getinfo Ethernet
networksetup -getmedia Ethernet

NETWORKSETUP (8) คู่มือผู้จัดการระบบ BSD NETWORKSETUP (8)

NAME networksetup - เครื่องมือกำหนดค่าสำหรับการตั้งค่าเครือข่ายใน System Preferences

แต่มันไม่ได้เป็นแบบลีนจริงๆและอาจให้ข้อมูลน้อยกว่าifconfig


1
bash-3.2 $ networksetup -getinfo Ethernet Ethernet ไม่ใช่บริการเครือข่ายที่รู้จัก ** ข้อผิดพลาด: พารามิเตอร์ไม่ถูกต้อง
Mona Jalal

3

ฉันจะผสมทั้ง ifconfig และ networksetup:

ifconfig

alex@smiley:~|⇒  ifconfig en0 | grep status
status: active

networkstatus

alex@smiley:~|⇒  networksetup -getinfo "Ethernet Adaptor (en0)" 
DHCP Configuration
IP address: 192.168.1.11
Subnet mask: 255.255.255.0
Router: 192.168.1.1
Client ID:  
IPv6: Automatic IPv6 
IP address: none
IPv6 Router: none 
Ethernet Address: 1c:6f:65:98:de:81

ใช้ร่วมกับเครื่องมือใดก็ได้ที่คุณต้องการ จะง่ายพอที่จะรวมบรรทัดต่าง ๆ เป็นสคริปต์ง่าย ๆ เพื่อแสดงผลข้อมูลทั้งหมดเข้าด้วยกัน


-1

โปรดเปลี่ยนen0เป็นชื่อ i / f ของคุณ

$ networksetup -getmedia en0
Current: autoselect
Active: 1000baseT <full-duplex>

ยินดีต้อนรับสู่ถามที่แตกต่างกัน โปรดดูวิธีการตอบสำหรับเคล็ดลับในการให้คำตอบที่นี่ ข้อมูลนี้คล้ายกับคำตอบก่อนหน้ามาก โปรดแก้ไขคำตอบที่มีอยู่เพื่อเพิ่มข้อมูลของคุณหรืออธิบายว่าทำไมคำตอบของคุณจึงแตกต่างอย่างมีนัยสำคัญหรือดีกว่าคำตอบที่ได้ให้ไปแล้ว - จากการรีวิว
fsb
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.