Commit Graph

190 Commits

Author SHA1 Message Date
Christian Ulrich 22950304fe
fix syntax error 2020-11-15 14:11:31 +01:00
Christian Ulrich 9e87c777c7
add second rendezvous server 2020-11-15 14:10:48 +01:00
Christian Ulrich 8522b3749b
implement naive port prediction 2020-11-15 14:07:35 +01:00
Christian Ulrich b7236bfe45
adapt rendezvous server protocol to multi-server probing 2020-11-14 14:33:42 +01:00
Christian Ulrich 278f066797
fix infinite loop 2020-11-14 14:33:00 +01:00
Christian Ulrich ed125417cb
remove obsolute method getProtocol 2020-11-14 14:20:38 +01:00
Christian Ulrich 7831d2a6ed
prepare to use multiple servers for probing endpoints; use hardcoded list of rendezvous servers for now 2020-11-14 14:18:55 +01:00
Christian Ulrich 5725e1ff82
forgot to add udp technique here 2020-10-25 23:07:13 +01:00
Christian Ulrich 56d30e8b66
update README (add udp technique); use actual technique identifiers 2020-10-25 23:05:22 +01:00
Christian Ulrich 699f8306c2
close socket on timeout 2020-10-25 22:23:39 +01:00
Christian Ulrich 383260c95e
first implementation of UdpPuncher (untested) 2020-10-25 21:57:09 +01:00
Christian Ulrich b9dc7dabaf
remove unneeded imports 2020-10-25 10:54:45 +01:00
Christian Ulrich 4be3ffd207
need to include protocol here too 2020-10-25 10:50:21 +01:00
Christian Ulrich 5bdb69f214
store transport protocol in an Attempt; consider protocol when comparing attempts; puncher.getProtocol not needed anymore 2020-10-25 10:46:29 +01:00
Christian Ulrich 5c6050faaf
add FIXME 2020-10-25 10:34:25 +01:00
Christian Ulrich 735fd8aec4
use random ID in IP header 2020-10-24 19:15:46 +02:00
Christian Ulrich ca88330b4d
use SO_REUSEADDR in accept loop 2020-10-24 19:05:16 +02:00
Christian Ulrich 1b315f0eee
Revert "use SO_REUSEADDR in accept loop"
This reverts commit b0398adc12.
2020-10-24 19:04:24 +02:00
Christian Ulrich b0398adc12
use SO_REUSEADDR in accept loop 2020-10-24 19:00:49 +02:00
Christian Ulrich a986bd52b8
firewall rules not needed for tcp-syni's respond 2020-10-24 18:51:13 +02:00
Christian Ulrich 0750af1a13
introduce new Puncher interface; implement puncher interface for tcp-syni and tcp-nutss 2020-10-24 18:44:37 +02:00
Christian Ulrich ff8fa732dc
rename Protocol type to avoid conflict with nativesockets.Protocol 2020-10-24 18:43:10 +02:00
Christian Ulrich 5debee2521
tcp-syni -> tcp-nutss (undo accidental change) 2020-10-24 00:35:39 +02:00
Christian Ulrich 287e344779
use & instead of fmt 2020-10-23 01:21:19 +02:00
Christian Ulrich 70778f972e
use inheritance (Puncher <- Initiator/Responder <- puncher implementations) to simplify logic in punchd.nim 2020-10-23 01:15:37 +02:00
Christian Ulrich 2c5ce97fca
move injectTcpPacket to raw_socket module 2020-10-22 17:04:20 +02:00
Christian Ulrich 504ff6795a
fix indentation 2020-10-22 00:40:14 +02:00
Christian Ulrich c59d6e42f7
need to include empty extraArgs in tcp-nutss progress message 2020-10-22 00:30:39 +02:00
Christian Ulrich 7691b984a8
fix field names in example app 2020-10-22 00:27:36 +02:00
Christian Ulrich 0f21a63a81
adapt punchd messages to README 2020-10-22 00:22:11 +02:00
Christian Ulrich 239ddd64b1
Also -> In addition 2020-10-21 00:54:52 +02:00
Christian Ulrich a66f1e2e51
clarify 'Receiving sockets' section 2020-10-21 00:50:34 +02:00
Christian Ulrich 038b6b3f2e
reformat comment 2020-10-21 00:33:25 +02:00
Christian Ulrich 1e99b50e68
markdown 2020-10-21 00:30:15 +02:00
Christian Ulrich 23272fda6c
hint at SCM_RIGHTS 2020-10-21 00:28:06 +02:00
Christian Ulrich fc2b0e9b63
add API section; markdown formatting 2020-10-21 00:23:34 +02:00
Christian Ulrich d04bbfa4b9
shorten rendezvous server section 2020-10-20 00:35:28 +02:00
Christian Ulrich 31f09a0a88
add section about rendezvous server 2020-10-20 00:28:31 +02:00
Christian Ulrich 5459cdee1b
make NUTSS reference more compact 2020-10-19 23:42:19 +02:00
Christian Ulrich bea82a1b7f
add README 2020-10-19 23:40:39 +02:00
Christian Ulrich 2b938f9278
check if the client is still there before sending a message (fix unhandled ValueError) 2020-10-16 00:18:11 +02:00
Christian Ulrich 91b7d14958
no firewall rules needed for tcp_nutss_responder; remove unneeded cleanup logic 2020-10-15 19:52:28 +02:00
Christian Ulrich 7c9940b3b9
add FIXME 2020-10-15 19:20:51 +02:00
Christian Ulrich a191de4452
use predicted port range 2020-10-15 19:20:44 +02:00
Christian Ulrich 9e96dd5c78
Nutss does not use sequence numbers 2020-10-15 10:06:39 +02:00
Christian Ulrich b7837c43e6
try out NUTSS 2020-10-15 09:56:29 +02:00
Christian Ulrich 3f27102e20
first try implementing the NUTSS (b) approach 2020-10-14 20:52:20 +02:00
Christian Ulrich 9fac0cec0e
cosmetic changes; add FIXMEs 2020-10-14 20:51:32 +02:00
Christian Ulrich 38c935a573
Revert "allow empty seqs"
This reverts commit 06465c93cd.
2020-10-14 20:32:44 +02:00
Christian Ulrich 9147194427
move port prediction into dedicated module 2020-10-14 18:40:58 +02:00