Commit 155c113
fix: nftables rule generation and masquerade for L4 load balancer
Add meta l4proto prefix to DNAT rules so nftables has transport protocol
context for the inet_service (port) mapping. Add a postrouting
masquerade chain with ct status dnat to handle same-subnet backends
where the response would otherwise bypass conntrack and miss the reverse
DNAT.
Also fix test compilation issues and adjust unit test assertions for the
updated rule format.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent c2635ea commit 155c113
2 files changed
Lines changed: 55 additions & 17 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
324 | 324 | | |
325 | 325 | | |
326 | 326 | | |
| 327 | + | |
| 328 | + | |
327 | 329 | | |
328 | 330 | | |
329 | 331 | | |
330 | 332 | | |
| 333 | + | |
| 334 | + | |
| 335 | + | |
| 336 | + | |
| 337 | + | |
331 | 338 | | |
332 | | - | |
| 339 | + | |
| 340 | + | |
| 341 | + | |
| 342 | + | |
| 343 | + | |
333 | 344 | | |
334 | 345 | | |
335 | 346 | | |
| |||
355 | 366 | | |
356 | 367 | | |
357 | 368 | | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
358 | 386 | | |
359 | 387 | | |
360 | 388 | | |
| |||
705 | 733 | | |
706 | 734 | | |
707 | 735 | | |
708 | | - | |
| 736 | + | |
709 | 737 | | |
710 | 738 | | |
711 | 739 | | |
| |||
738 | 766 | | |
739 | 767 | | |
740 | 768 | | |
741 | | - | |
| 769 | + | |
742 | 770 | | |
743 | 771 | | |
744 | 772 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
26 | 38 | | |
27 | 39 | | |
28 | | - | |
29 | | - | |
30 | 40 | | |
31 | 41 | | |
32 | 42 | | |
| |||
288 | 298 | | |
289 | 299 | | |
290 | 300 | | |
291 | | - | |
| 301 | + | |
292 | 302 | | |
293 | 303 | | |
294 | 304 | | |
| |||
0 commit comments