ACSP Troubleshooting and Networking 2 — Questions and Answers
Question 1: What is the 'ping' command used for in macOS network troubleshooting?
- Ping sends ICMP Echo Request packets to a destination and measures round-trip time; used to verify connectivity, test if a host is reachable, and identify latency or packet loss (Correct answer)
- Ping establishes a TCP connection to a server to test if a web service is responding
- Ping downloads a small test file from a server to measure network throughput and bandwidth
- Ping is used to check the status of DNS resolution without testing network connectivity
Correct answer: Ping sends ICMP Echo Request packets to a destination and measures round-trip time; used to verify connectivity, test if a host is reachable, and identify latency or packet loss
'ping hostname' or 'ping IP_address' sends ICMP Echo Requests and reports replies with round-trip times. No replies = host unreachable or blocking ICMP. High latency or packet loss indicates network issues. Essential first-step connectivity test.
ping usage: 'ping -c 5 apple.com' sends 5 packets then stops (default pings continuously, Ctrl+C to stop). Output shows: bytes, sequence number, TTL (time to live), and time in milliseconds. Interpreting results: 100% success with <10ms = good local network, 20-80ms = typical internet, 100ms+ = high latency. Packet loss percentage matters: 0% = healthy, any loss on LAN = investigate, periodic loss = network congestion. 'ping -f destination' (flood ping, requires sudo) tests maximum packet rate. 'ping6' tests IPv6 specifically. If ping succeeds to IP but fails to hostname, DNS is the issue. Many servers block ICMP (ping) — a timeout doesn't always mean the server is down.
Question 2: A Mac can connect to the local network but cannot reach the internet. What systematic troubleshooting steps should be taken?
- Test local gateway ping, check DNS resolution, test internet IP ping, verify default route, then check ISP-side issues — narrowing from local to remote systematically (Correct answer)
- Immediately reinstall macOS since network issues cannot be diagnosed without a clean system
- Reset all network settings by deleting the NetworkInterfaces.plist file and rebooting
- Run First Aid on the startup disk as network issues are often caused by file system corruption
Correct answer: Test local gateway ping, check DNS resolution, test internet IP ping, verify default route, then check ISP-side issues — narrowing from local to remote systematically
Systematic network troubleshooting follows the OSI model from local to remote: ping the default gateway (local connectivity), ping 8.8.8.8 (ISP/routing), ping google.com (DNS), check 'networksetup' settings, check router for blocked MAC, verify with another device.
Methodical steps: 1) 'ifconfig en0' — verify IP address (not 169.254.x.x which = no DHCP). 2) 'ping [default gateway]' — can you reach your router? 3) 'ping 8.8.8.8' — can you reach the internet by IP? If yes, DNS is the issue. 4) 'ping google.com' — does DNS resolve? 5) 'nslookup google.com 8.8.8.8' — can you use alternate DNS? 6) 'traceroute google.com' — where does the path fail? 7) Check another device on same network — if all fail, it's router/ISP; if just this Mac, it's device-specific. 8) Check firewall settings, proxy settings, and VPN status. 9) Try renewing DHCP: 'sudo ipconfig set en0 DHCP'. Common culprits: misconfigured proxy, VPN blocking traffic, incorrect DNS, router firewall rules.
Question 3: What does 'traceroute' show in macOS network diagnostics?
- Traceroute shows each network hop (router) between the Mac and destination, with latency at each hop — revealing where packets are delayed or dropped along the path (Correct answer)
- Traceroute shows the physical cable route that network traffic takes from the Mac to the destination server
- Traceroute tests all network interfaces simultaneously and shows which provides the fastest path to a destination
- Traceroute only works on local networks and cannot trace routes across the internet
Correct answer: Traceroute shows each network hop (router) between the Mac and destination, with latency at each hop — revealing where packets are delayed or dropped along the path
'traceroute hostname' (or 'traceroute -n IP_address' to skip DNS lookups) sends packets with incrementing TTL values, revealing each router hop with its IP/hostname and round-trip latency — showing exactly where high latency or packet loss occurs along the network path.
traceroute works by sending packets with TTL=1 (first router must respond), TTL=2 (second router), etc. Each router that decrements TTL to 0 sends an ICMP Time Exceeded message back, revealing its IP. Output: hop number, 3 round-trip times (multiple probes per hop), hostname and IP. Stars (***) mean the router isn't responding to ICMP (common for security reasons) but traffic may still pass through. High latency spike at a specific hop identifies congestion there. On macOS, use 'traceroute google.com' or the Network Diagnostics tool (in Wireless Diagnostics app). Windows equivalent: 'tracert'. Alternative: 'mtr' (not built-in) combines ping and traceroute for continuous monitoring.
Question 4: What is Wireless Diagnostics in macOS and how does a technician access it?
- Wireless Diagnostics is a built-in macOS tool for analyzing Wi-Fi environment, logging connections, scanning channels, and capturing packets; accessed by Option-clicking the Wi-Fi menu bar icon and selecting 'Open Wireless Diagnostics' (Correct answer)
- Wireless Diagnostics is only available through Apple's developer portal and requires an Apple Developer account
- Wireless Diagnostics is accessed from System Settings > Network > Advanced > Wireless Diagnostics tab
- Wireless Diagnostics requires installing additional tools from Xcode Command Line Tools before it becomes available
Correct answer: Wireless Diagnostics is a built-in macOS tool for analyzing Wi-Fi environment, logging connections, scanning channels, and capturing packets; accessed by Option-clicking the Wi-Fi menu bar icon and selecting 'Open Wireless Diagnostics'
Wireless Diagnostics (/System/Library/CoreServices/Applications/Wireless Diagnostics.app) is accessed via Option+click on the Wi-Fi menu bar icon. It offers guided troubleshooting, Wi-Fi environment scanning (nearby networks and channels), performance graphs, and packet capture.
Wireless Diagnostics capabilities: Guided Troubleshooting (step-by-step wizard for common Wi-Fi issues), Scan (lists all visible networks with SSID, BSSID, channel, signal/noise/SNR), Performance (real-time signal quality and rate graphs), Info (detailed current connection info including PHY mode, channel, Tx/Rx rate), Logs (continuous Wi-Fi event logging), Sniffer (packet capture on a specific channel using Wi-Fi). For advanced diagnostics, the Window menu reveals: Monitor, Scan, Info, Logs, Sniffer, Performance, and Profile options as separate panels. The log files created at '/var/tmp/wifi.log' and '/tmp/wifi-diagnostics/' contain detailed connection history. Useful for diagnosing interference, weak signal, association failures, and roaming issues.
Question 5: What does a 'Self-Assigned IP Address' (169.254.x.x) mean on macOS and how should it be resolved?
- 169.254.x.x is an APIPA (Automatic Private IP Addressing) address assigned when DHCP fails; indicates the Mac cannot reach the DHCP server — check cable/Wi-Fi connection, router DHCP status, and try 'Renew DHCP Lease' (Correct answer)
- 169.254.x.x is a valid private IP range used by enterprise networks for internal communication
- 169.254.x.x means FileVault is blocking network access until the user logs in
- 169.254.x.x is the default IP address assigned to Ethernet before Wi-Fi is connected and resolves automatically
Correct answer: 169.254.x.x is an APIPA (Automatic Private IP Addressing) address assigned when DHCP fails; indicates the Mac cannot reach the DHCP server — check cable/Wi-Fi connection, router DHCP status, and try 'Renew DHCP Lease'
A 169.254.x.x address (APIPA/link-local) is self-assigned by macOS when DHCP fails — the Mac couldn't get an IP from the router. The Mac cannot reach internet or other DHCP-assigned devices until the DHCP issue is resolved.
APIPA (RFC 3927) assigns 169.254.x.x when DHCP times out (usually after 4 attempts over ~68 seconds). Resolution steps: 1) Check physical connection (Ethernet cable seated, Wi-Fi password correct). 2) Verify the router/DHCP server is running. 3) Try 'Renew DHCP Lease' in Network settings Details. 4) 'sudo ipconfig set en0 DHCP' forces a DHCP request. 5) Check if DHCP pool is exhausted on the router (too many devices). 6) Try a different network port or cable. 7) Check firewall for DHCP blocking (UDP ports 67/68). Note: 169.254.x.x devices CAN communicate with each other for mDNS/Bonjour, which is why local Bonjour discovery sometimes still works even without DHCP. 'ipconfig getpacket en0' shows the last DHCP packet response details.
Question 6: What is Network Quality (networkQuality) command in macOS Monterey and later?
- networkQuality is a built-in macOS command that measures internet connection quality including upload/download speed, latency under load (RPM), and responsiveness using Apple's infrastructure (Correct answer)
- networkQuality is a third-party speed testing tool that must be installed from Homebrew before use
- networkQuality tests only LAN (local area network) performance and cannot measure WAN/internet speed
- networkQuality is the command-line equivalent of the Wireless Diagnostics app for measuring Wi-Fi signal strength
Correct answer: networkQuality is a built-in macOS command that measures internet connection quality including upload/download speed, latency under load (RPM), and responsiveness using Apple's infrastructure
'networkQuality' (built into macOS Monterey+) measures internet connection download/upload speed and 'Responsiveness' (RPM - Requests Per Minute) — a measure of latency under load that better reflects real-world browsing performance than traditional ping tests.
'networkQuality' runs in Terminal on macOS 12 Monterey and later. Output: Upload capacity, Download capacity, Upload Flows, Download Flows, and Responsiveness (RPM). Responsiveness measures latency under load (different from idle latency/ping) — it simulates real usage where multiple simultaneous connections are active. Higher RPM = more responsive connection (600+ RPM = excellent, 400-600 = typical, <400 = poor). Options: 'networkQuality -v' for verbose output, 'networkQuality -s' for sequential (not parallel) test, '-I en0' to test specific interface. The underlying technology is based on the IETF RFC 9097 (IETF Working Group L4S). This is more meaningful than simple Mbps tests for real-world performance evaluation.
What is the 'ping' command used for in macOS network troubleshooting?