NAT: Full Cone (EIM) NAT with ETCP_ID_NAT protocol, per-node routing, and comprehensive test suite
- New ETCP protocol ETCP_ID_NAT (0x02) for NAT traffic between nodes - eim_nat.c/h: Pure NAT engine (table, port allocation, checksum updates, egress/ingress) - nat_transport.c/h: Transport layer (NAT TUN, ETCP binding, client/provider roles) - route_bgp_find_conn_for_node(): shared utility for optimal connection lookup - tun_init_nat(): dedicated TUN creation for NAT - Config: [nat] section with tun_ip, port_start/end, nat_via, forward rules - Fix: csum_update_ip/transport use htonl() halves (correct on LE systems) - Fix: IP_FRAG_MF_MASK changed to 0x2000 (after ntohs, MF is bit 13) - Tests: 26 engine unit + 4 transport integration + 7 stress (29 total)
This commit is contained in:
1 parent
b7da11c2bf
commit
907ef244c6
22 files changed
+2780
-4
No files matched your search
+2
-1
@@ -55,7 +55,8 @@ typedef int debug_category_t;
|
||||
#define DEBUG_CATEGORY_TRAFFIC 17 // Traffic flow (src/dst node IDs)
|
||||
#define DEBUG_CATEGORY_DEBUG 18 // Current debugging
|
||||
#define DEBUG_CATEGORY_GENERAL 19 // Messages for user (common log)
|
||||
#define DEBUG_CATEGORY_COUNT 20 // Total number of categories
|
||||
#define DEBUG_CATEGORY_NAT 20 // EIM NAT module
|
||||
#define DEBUG_CATEGORY_COUNT 21 // Total number of categories
|
||||
#define DEBUG_CATEGORY_ALL (-1) // special value for all categories
|
||||
|
||||
/* Debug configuration structure */
|
||||
|
||||
Reference in new issue
Block a user