Devin Carr
9da15b5d96
TUN-8640: Refactor ICMPRouter to support new ICMPResponders
...
A new ICMPResponder interface is introduced to provide different
implementations of how the ICMP flows should return to the QUIC
connection muxer.
Improves usages of netip.AddrPort to leverage the embedded zone
field for IPv6 addresses.
Closes TUN-8640
2024-11-27 12:46:08 -08:00
chungthuang
9c1f5c33a8
TUN-8158: Bring back commit e653741885
and fixes infinite loop on linux when the socket is closed
2024-01-22 13:46:33 +00:00
chungthuang
2c38487a54
Revert "TUN-8158: Add logging to confirm when ICMP reply is returned to the edge"
...
This reverts commit e653741885
.
2024-01-19 19:37:28 +00:00
chungthuang
e653741885
TUN-8158: Add logging to confirm when ICMP reply is returned to the edge
2024-01-16 15:56:24 +00:00
Devin Carr
515ad7cbee
TUN-6917: Bump go to 1.19.3
2022-11-07 09:19:19 -08:00
cthuang
e9d07e35c7
TUN-6861: Trace ICMP on Windows
2022-10-18 09:57:19 +01:00
cthuang
495f9fb8bd
TUN-6856: Refactor to lay foundation for tracing ICMP
...
Remove send and return methods from Funnel interface. Users of Funnel can provide their own send and return methods without wrapper to comply with the interface.
Move packet router to ingress package to avoid circular dependency
2022-10-17 19:48:35 +01:00
cthuang
cbf8c71fab
TUN-6716: Document limitation of Windows ICMP proxy
2022-09-29 14:51:53 +01:00
cthuang
be0305ec58
TUN-6741: ICMP proxy tries to listen on specific IPv4 & IPv6 when possible
...
If it cannot determine the correct interface IP, it will fallback to all interfaces.
This commit also introduces the icmpv4-src and icmpv6-src flags
2022-09-26 11:37:08 +01:00
cthuang
b639b6627a
TUN-6744: On posix platforms, assign unique echo ID per (src, dst, echo ID)
...
This also refactor FunnelTracker to provide a GetOrRegister method to prevent race condition
2022-09-19 14:39:47 +01:00
cthuang
e454994e3e
TUN-6767: Build ICMP proxy for Windows only when CGO is enabled
2022-09-16 10:14:05 +01:00
cthuang
8a53c1aa1d
TUN-6592: Decrement TTL and return ICMP time exceed if it's 0
2022-09-15 17:53:26 +01:00
cthuang
30c529e730
TUN-6743: Support ICMPv6 echo on Windows
2022-09-12 10:40:50 +01:00
cthuang
bf3d70d1d2
TUN-6654: Support ICMPv6 on Linux and Darwin
2022-09-12 09:27:06 +01:00
cthuang
2ffff0687b
TUN-6696: Refactor flow into funnel and close idle funnels
...
A funnel is an abstraction for 1 source to many destinations.
As part of this refactoring, shared logic between Darwin and Linux are moved into icmp_posix
2022-09-09 13:06:00 +01:00
Chung-Ting Huang
3e0ff3a771
TUN-6531: Implement ICMP proxy for Windows using IcmpSendEcho
2022-09-07 19:18:06 +00:00