IP、路由與 IPv6

在 Mac 上更新 DHCP 租約

DHCP 租約會提供 Mac 的 IP 位址、路由器和 DNS 伺服器。更新租約就是再向 DHCP 伺服器要一次。

適用於:「系統設定」的步驟適用於 macOS 13 Ventura 以上版本。終端機指令適用於所有目前的 macOS 版本。檢查日期:2026年10月29日

症狀

  • Mac 的 IP 位址是自行指定的,或是錯的。
  • 路由器換了,但 Mac 還在用舊的 DNS 伺服器。
  • 路由器重新開機後,連線就斷了。

可能原因

  • 舊的租約。Mac 會一直使用租約直到到期。路由器上的變更不一定會立即傳到 Mac。
  • 繁忙網路上的租約時間很短。Apple 表示,很多電腦共用一台 DHCP 伺服器時,可能需要經常更新租約。
  • DHCP 請求失敗。請求沒有得到回應,例如在睡眠後或換線之後。

如何檢查

  1. 找出每個網路連接埠的裝置名稱,例如 Wi-Fi 是 en0。

    networksetup -listallhardwareports
  2. 顯示目前的位址。

    ipconfig getifaddr en0
  3. 顯示 DHCP 伺服器提供的租約,包括路由器、DNS 伺服器和租約時間。

    ipconfig getpacket en0

如何修正

  1. 選擇「蘋果」選單 >「系統設定」>「網路」。

  2. 按一下網路服務,再按「詳細資訊」。

  3. 按一下「TCP/IP」,再按「更新 DHCP 租約」,然後按「好」。

  4. 再執行一次 ipconfig getpacket en0,比較前後的數值。

  5. 如果什麼都沒變,把 Wi-Fi 關掉再打開。

    networksetup -setairportpower en0 off

    需要管理者密碼。

  6. 重新打開 Wi-Fi。

    networksetup -setairportpower en0 on

    需要管理者密碼。

使用 Kilobat

  1. CLI 可以一步把 Wi-Fi 關掉再打開。

    kilobat wifi restart

常見問題

每次都會拿到新的 IP 位址嗎?

不會。許多 DHCP 伺服器會把同一個位址再發給同一台裝置。

scutil --renew 有什麼作用?

scutil 的 man 頁面說明,它會重新檢查該介面的網路設定。

資料來源

資料來源檢查日期:2026年10月29日。man 頁面為 macOS 內建版本;在終端機中用 man <name> 開啟。