🐍 Python 3.10+
Get Network Adapter Configuration Report (Python)
Uses wmic under the hood to report Network Adapter Configuration (Win32_NetworkAdapterConfiguration) — no third-party packages required.
get_network_adapter_config_report.py
#!/usr/bin/env python3
"""
get_network_adapter_config_report.py
Reports Network Adapter Configuration on this computer via WMI (Win32_NetworkAdapterConfiguration), using the
built-in `wmic` command so no extra packages are required.
Usage:
python get_network_adapter_config_report.py
"""
import csv
import io
import subprocess
import sys
def main() -> None:
result = subprocess.run(
["wmic", "path", "Win32_NetworkAdapterConfiguration", "get", "Description,IPAddress,DefaultIPGateway,DNSServerSearchOrder", "/format:csv"],
capture_output=True, text=True, check=False,
)
if result.returncode != 0:
sys.exit(f"wmic failed: {result.stderr.strip()}")
lines = [line for line in result.stdout.splitlines() if line.strip()]
if len(lines) < 2:
print("No Network Adapter Configuration found.")
return
reader = csv.DictReader(io.StringIO("\n".join(lines)))
rows = list(reader)
for row in rows:
for key, value in row.items():
if key and key != "Node":
print(f" {key}: {value}")
print("-" * 40)
print(f"\n{len(rows)} Network Adapter Configuration found.")
if __name__ == "__main__":
main()