When accessing the Internet, you are assigned a Public IPv4 address, such as 217.131.16.191
, or an IPv6 address, like 2000:14b0:43a9:afa9:a31f:7062:be1d:4b1e
. Verification can be done by visiting https://test-ipv6.com/. Communicating these addresses or MAC addresses like 78:96:12:1a:31:22
can be error-prone and complex for those unfamiliar with technology. Additionally, it lacks historical data, particularly related to past issues.
When attempting to access a website, such as https://jakubowski.name, the process involves initially accessing a DNS server to convert the host component (jakubowski) and the Top Level Domain (name) of the URL into an IP address, like 17.118.117.130
. For every web request, your computer and browser sends its type, for example: Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like Gecko
The default gateway, usually configured automatically via DHCP, assigns an address like 192.168.108.123
(typically ending in .1 or .254 based on the scope size). This is where all of your computer’s traffic is routed. For IPv6
, detailed guidance is available at how-to-fix-ipv6-connectivity/, and you can verify on Mac or Linux using:
netstat -rn -f inet | egrep -i "default|0/1|128.0/1"
0/1 172.18.12.193 UGScg utun3 default 192.168.108.123 UGScg en0 128.0/1 172.18.12.193 UGSc utun3
Note: We are not just looking for the default but also for any VPN that overrides the public v4 address space.
netstat -rn -f inet6 | egrep -i "default|2000::/3"
If you have IPv6 active the above should return at least one route (as per below) via a known interface such as “en0 " on a Mac.
default fe80:51b5:23cb:f02c:b97b%en0 UGcg en0 default fe80::%utun0 UGcIg utun0 default fe80::%utun1 UGcIg utun1 default fe80::%utun2 UGcIg utun2 2000::/3 utun3 USc utun3
Note: We are not just looking for the default but also for any VPN that overrides the public v6 address space.
To get a look at the low level DHCP configuration (Mac/Linux):
ipconfig getpacket en0
... domain_name_server (ip_mult): {246.65.150.153, 103.116.199.225} end (none): ...
So, in the above we are not getting IPv6 DNS servers from the DHCPv4 reply but…
ipconfig getv6packet en0
DHCPv6 REPLY (7) Transaction ID 0x80940b Length 76 Options[4] = { CLIENTID (1) Length 14: DUID LLT HW 1 Time 668691856 Addr 78:96:12:1a:31:22 DNS_SERVERS (23) Length 32: 2606:4700:4700::1111, 2001:4860:4860::8844 DOMAIN_LIST (24) Length 0: Invalid SERVERID (2) Length 10: DUID LL HW 1 Addr 0e:d7:45:cd:29:ed }
When it comes to transmitting data to your router, you may be using either a wired or wireless (Wi-Fi) medium at the physical and data layer.
No matter which version of OSX/macOS you are currently running - whether it’s 10.13.2
, 11.0.2
, or 12.2.6
- there are various tools available for troubleshooting. However, these manual actions and scripts do not provide a series of correlated values over time. This is where automated remote troubleshooting becomes valuable, particularly for teams that are embracing remote work and the Work From Anywhere (WFA) trend.
One particularly useful tool on OSX/macOS is the sudo wdutil info
, which provides a dump of current wireless settings to the CLI and can also be configured to generate specific logs for troubleshooting. Furthermore, the sysdiagnose
tool can be used to generate a wide range of logs (although many are only point-in-time in relation to wireless, similar to wdutil).
To run sudo nohup /usr/bin/sysdiagnose -u &
in the background and write logs to /var/tmp/<blah>.tar.gz
, or to run it interactively, you can use sudo /usr/bin/sysdiagnose
. Just be mindful of the large file sizes, which are approximately 300MB.
Digital work requires reliable connectivity. Whether for low latency or regular data streams, Wi-Fi, DNS, and network issues cause teams to lose time and productivity. Even worse is when support teams waste time trying to recreate and isolate issues! See how PanSift saves time, money, and frustration on all sides with instant remote troubleshooting 🏠🏝🛰.
2 x free macOS agents
No registration, immediate live demo!