|
|
|
|
@ -54,7 +54,7 @@ route_table_destroy(rt);
|
|
|
|
|
| `route_lookup(table, dest_ip)` | LPM-поиск. Возвращает `ROUTE_ENTRY*` или NULL. Инкрементит `stats` (hits/misses) | |
|
|
|
|
| `route_table_print(table)` | Печатает содержимое таблицы в лог | |
|
|
|
|
| `parse_subnet(str, network, prefix_length)` | Парсит `"a.b.c.d/n"` → network (BE) + prefix_length. Возвращает 0/-1 | |
|
|
|
|
| `is_local_subnet(ip)` | Проверяет, является ли IP локальным/мультикастовым/зарезервированным (0=true). RFC1918 + 0.0.0.0/8 + 127.0.0.0/8 + АPIPA + multicast + broadcast | |
|
|
|
|
| `is_local_subnet(ip)` | Проверяет, является ли IP локальным/мультикастовым/зарезервированным (0=true). RFC1918 + 0.0.0.0/8 + 127.0.0.0/8 + АPIPA + multicast + broadcast + CGNAT (100.64.0.0/10) | |
|
|
|
|
| `route_add_local_subnet(table, network, prefix_length)` | **Объявлена в .h, но не реализована** | |
|
|
|
|
|
|
|
|
|
### Внутренние функции |
|
|
|
|
|