martin-ger/esp32_nat_router
An AI-enabled NAT Router/Firewall for the ESP32
What it solves
This project provides firmware that transforms an ESP32 microcontroller into a WiFi NAT router. It allows users to create a small-scale network bridge or range extender, enabling devices to connect to the ESP32 and have their traffic routed to an uplink network (WiFi or Ethernet).
How it works
The firmware implements Network Address Translation (NAT) and IP forwarding between the ESP32's Access Point (AP) interface and its Station (STA) or Ethernet (ETH) interface. It can also establish a VPN tunnel using WireGuard for upstream traffic. Configuration is handled via a password-protected web interface, a serial console, or a remote TCP console.
Who it’s for
- Network enthusiasts looking for a cheap, minimal network device.
- IoT developers needing a network bridge for guest or restricted IoT networks.
- System administrators needing to convert corporate WPA2-Enterprise networks to WPA2-PSK for simpler devices.
- Home automation users integrating network monitoring via MQTT and Home Assistant.
Highlights
- NAT Routing: Supports IP forwarding with throughput up to 15+ Mbps.
- WireGuard VPN: Integrated VPN tunnel for secure upstream traffic.
- Enterprise WiFi: Support for WPA2-Enterprise (PEAP, TTLS, TLS) to convert corporate networks to PSK.
- AI-Ready: Includes a beta MCP Bridge allowing AI assistants (like Claude) to control the router via the Model Context Protocol.
- Network Tools: Live PCAP packet capture streaming to Wireshark, firewall ACLs, and DHCP reservations.
- Hardware Support: Compatible with various ESP32 variants (C3, C5, C6, S3) and Ethernet-capable boards like WT32-ETH01.
- Management: Web UI, mDNS support (
esp32-nat-router.local), and OTA updates.
Related
- Project
- Project
- Project
- Project