Släpp och förnya DHCP från kommandoraden med ipconfig

Om du behöver släppa och förnya DHCP från kommandoraden på en Mac kan det hjälpsamma ipconfig-verktyget göra det snabbt. Tänk på att för de flesta användare av OS X är det bästa sättet att förnya DHCP-leasing från Mac System Preferences eftersom det är användarvänligt och lika effektivt, men Terminal-metoden har fördelar för avancerade användare och kan köras via ssh och enkelanvändarläge, vilket gör det till en värdefull bit av kunskap att dela.


Den grundläggande syntaxen för att förnya DHCP-leasing från kommandoraden med ipconfig är följande:

sudo ipconfig set (DEVICEINTERFACE) DHCP

Om du känner till enhetsgränssnittet (en0, en1, en2, etc), kör bara det kommandot för att släppa och förnya DHCP för den bestämda enheten. Låt oss säga att det är en0, standard för moderna Mac-datorer med Wi-Fi.

sudo ipconfig set en0 DHCP

När kommandot har körts kan du kontrollera om DHCP har ställt in korrekt genom att bestämma DHCP-info med samma ipconfig-kommando med "getpacket" som så:

ipconfig getpacket en0

Om du antar att det tidigare kommandot "set" lyckades, kommer getpacket att returnera DHCP-tilldelad IP, DNS-server, subnätmask, router / gateway och leasingtid. Om DHCP-informationen returneras tom, var gränssnittet frågat fel, eller DHCP-leaset förnyades inte eller distribuerades korrekt.

Ett annat orimligt alternativ skulle vara att köra ipconfig för alla tillgängliga enhetens gränssnitt på Mac: n genom att kombinera syntaxen som sådan:

sudo ipconfig set en0 DHCP && sudo ipconfig set en1 DHCP

Det är dock bäst att ställa in DHCP för det specifika gränssnittet.

Om du inte känner till gränssnittet är det första steget att avgöra dators gränssnitt för datorer som används för den specifika nätverksporten du använder. För de flesta moderna Mac-datorer söker vi Wi-Fi, som vanligtvis är på en0, men många Mac-användare använder Ethernet, en personlig iPhone-telefon, en tethered Android-telefon eller ett externt NIC-kort, som alla kan ha en olika enhetens gränssnitt beroende på maskinvaran. Du kan enkelt bestämma vad enhetens gränssnitt är genom att köra networketup -listallhardwareports som så:

networksetup -listallhardwareports

Bläddra genom utgången för att hitta gränssnittet du vill ställa in och förnya DHCP för, låt oss anta att du letar efter "Wi-Fi" som kan se ut så här:

Hardware Port: Wi-Fi
Device: en0
Ethernet Address: b1:3f:22:dd:ab:19

Vid sidan av "Enhet" hittar du gränssnittet, i det här fallet är det "en0", vilket är vad som är anslutet till det ovan nämnda ipconfig-kommandot.