LocalIP (macOS): improve detection
When a VPN session is enabled, the default route interface is changed to `utun*`, however `ipconfig` doesn't support it for some reason Use `ifconfig` instead
This commit is contained in:
@@ -3878,10 +3878,10 @@ get_local_ip() {
|
|||||||
"Mac OS X" | "macOS" | "iPhone OS")
|
"Mac OS X" | "macOS" | "iPhone OS")
|
||||||
if [[ "${local_ip_interface[0]}" == "auto" ]]; then
|
if [[ "${local_ip_interface[0]}" == "auto" ]]; then
|
||||||
interface="$(route get 1 | awk -F': ' '/interface/ {printf $2; exit}')"
|
interface="$(route get 1 | awk -F': ' '/interface/ {printf $2; exit}')"
|
||||||
local_ip="$(ipconfig getifaddr "$interface")"
|
local_ip="$(ifconfig "$interface" | grep "inet " | awk '{print $2}')"
|
||||||
else
|
else
|
||||||
for interface in "${local_ip_interface[@]}"; do
|
for interface in "${local_ip_interface[@]}"; do
|
||||||
local_ip="$(ipconfig getifaddr "$interface")"
|
local_ip="$(ifconfig "$interface" | grep "inet " | awk '{print $2}')"
|
||||||
if [[ -n "$local_ip" ]]; then
|
if [[ -n "$local_ip" ]]; then
|
||||||
prin "$interface" "$local_ip"
|
prin "$interface" "$local_ip"
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user