Commit Graph

126 Commits

Author SHA1 Message Date
Neil Alexander
4e5627f933 Update default interface MTU to use per-platform instead of global value 2018-03-03 12:43:39 +00:00
Neil Alexander
4917ea3dd2 Per-platform TUN defaults 2018-03-03 12:30:54 +00:00
Neil Alexander
bec898a326 Don't allow exceeding maximum MTU for a given platform 2018-03-03 11:47:14 +00:00
Neil Alexander
7c0102e43d Be a little bit less verbose on OpenBSD 2018-03-01 15:31:49 +00:00
Neil Alexander
6640b33334 Fix using 'auto' as device name on OpenBSD - default to /dev/tap0 2018-03-01 15:19:20 +00:00
Neil Alexander
24be3f1d67 Turns out FreeBSD is a bit different so restrict this to OpenBSD for now 2018-03-01 15:11:12 +00:00
Neil Alexander
90393ae03b Set interface flags properly on OpenBSD 2018-03-01 15:02:53 +00:00
Neil Alexander
9e4d169208 Set interface IP and MTU on BSD 2018-03-01 13:37:05 +00:00
Neil Alexander
f8dda26dba Add BSD support (openbsd, freebsd, solaris) 2018-03-01 11:49:49 +00:00
Neil Alexander
ebc4eacee4 Allow sane defaults on setTunTap 2018-02-28 15:27:58 +00:00
Neil Alexander
fdd32b9571 Add setTunTap 2018-02-28 15:15:57 +00:00
Neil Alexander
2b48fd1fce Add addPeer to admin socket 2018-02-28 13:43:06 +00:00
Arceliar
33c9f74f48
Merge pull request #22 from Arceliar/udp_mtu_fix
Mostly working PMTU discovery when going over UDP links
2018-02-25 20:43:10 -06:00
Arceliar
63b55cda62 Mostly working PMTU discovery when going over UDP links 2018-02-25 20:24:36 -06:00
Arceliar
0fae932512
Merge pull request #21 from Arceliar/testing
Breaking wire format cleanup and other updates
2018-02-23 17:10:45 -06:00
Arceliar
0470f6f1c1 cleanup 2018-02-23 13:04:52 -06:00
Arceliar
bb3ae8b39b temporarily limit PMTU to 2048, as a workaround to some pathelogical behavior where a TCP stream carried over a UDP peer can throttle down to 0 in the presence of significant packet loss 2018-02-23 12:46:22 -06:00
Arceliar
b4ea98862b
Merge pull request #20 from neilalexander/multithreadgenkeys
Multithread misc/genkeys.go
2018-02-21 12:03:28 -06:00
Neil Alexander
7101e147f4 Multithread misc/genkeys.go 2018-02-21 15:57:03 +00:00
Arceliar
d3dc7765f2 trying to debug UDP+large MTU issues 2018-02-20 17:31:12 -06:00
Arceliar
a81c361484 tcp reconnect bufix, test with bufio, and switch back to tcp auto-peering by default to continue testing 2018-02-19 23:22:36 -06:00
Arceliar
a21a039b57 remove unused field from peer 2018-02-19 19:47:11 -06:00
Arceliar
4045597516 Use larger UDP chunks for link-local IP and let the OS fragment it. Switch to UDP for link-local peers. Minor code cleanup for TCP. 2018-02-19 19:34:51 -06:00
Arceliar
8c7d514032 Merge branch 'master' into testing 2018-02-19 18:36:06 -06:00
Arceliar
4f710ac2da bash -> sh 2018-02-18 16:07:27 -06:00
Arceliar
a1afebc0df
Merge pull request #19 from neilalexander/sigterm
Catch SIGTERM and Windows service termination
2018-02-18 15:35:47 -06:00
Neil Alexander
aef62afb1b gofmt -s -w yggdrasil.go 2018-02-18 21:32:55 +00:00
Neil Alexander
0176d25235 Catch SIGTERM instead of (impossible to capture) SIGKILL, also capture Windows service termination 2018-02-18 21:16:47 +00:00
Arceliar
71150fcb86 ignore root tstamp updates if we just updated, to throttle the rate at which updates (and new signatures) can propagate 2018-02-17 23:57:24 -06:00
Arceliar
a66a29779a Slightly nicer way to throttle peer announcements 2018-02-17 23:41:42 -06:00
Arceliar
0fc7401635 check root before adding peers to the switch lookupTable, instead of during each lookup 2018-02-17 23:14:23 -06:00
Arceliar
430d49d8a4 send fewer link announcements, fix a ttl encoding bug, and remove unnecessary key field from the wire format for dht req/res 2018-02-17 21:59:08 -06:00
Arceliar
8ba11b86bb remove duplicate tcp connections 2018-02-17 20:44:23 -06:00
Arceliar
25f00c1c7a disable keys in link protocol traffic, since these are already known, *breaks backwards compat* 2018-02-17 20:30:59 -06:00
Arceliar
c0579024c0
Merge pull request #18 from Arceliar/rumormill
Add a rumor mill to throttle dht maintenance traffic
2018-02-17 17:25:51 -06:00
Arceliar
da44ec282f Add a rumor mill to throttle dht maintenance traffic 2018-02-17 17:10:08 -06:00
Arceliar
032ad3a162
Merge pull request #17 from neilalexander/windowssvc
Add support for running Yggdrasil as a Windows service
2018-02-16 11:56:05 -06:00
Neil Alexander
b57491656b Fix .travis.yml for these builds 2018-02-16 14:21:57 +00:00
Neil Alexander
d02250c94d Update README.md for Linux/systemd too 2018-02-16 14:19:26 +00:00
Neil Alexander
c453770b85 Add support for running Yggdrasil as a Windows service (using minwinsvc) 2018-02-16 14:12:44 +00:00
Arceliar
8a12a88447
Merge pull request #16 from neilalexander/notuntap
Allow setting IfName to 'none' to run without TUN/TAP
2018-02-16 00:31:50 -06:00
Neil Alexander
02473158d4 Allow setting IfName to 'none' to run without TUN/TAP 2018-02-15 22:29:13 +00:00
Arceliar
120ce8bd2f
Merge pull request #15 from neilalexander/packettoobig
Implement Path MTU Discovery using session MTU
2018-02-15 12:59:46 -06:00
Neil Alexander
366d2af1d3 Fix first queued packet on session pcreation 2018-02-15 18:02:08 +00:00
Neil Alexander
1c59338f01 Fix checksums and packet buffers, sends ICMPv6 Packet Too Big messages successfully now 2018-02-15 13:38:54 +00:00
Neil Alexander
37e4492b86 Send ICMPv6 response to packets larger than session MTU (WIP: checksum wrong?) 2018-02-14 22:59:24 +00:00
Arceliar
a3a9696880
Merge pull request #14 from neilalexander/icmpv6
Replace ndp.go with icmpv6.go
2018-02-14 11:16:24 -06:00
Arceliar
f6bdbda5c3
Merge pull request #13 from neilalexander/exchangemtu
Include endpoint MTU in session pings
2018-02-14 11:16:09 -06:00
Neil Alexander
844212e95b Highlight packets that exceed the agreed session MTU 2018-02-14 14:08:40 +00:00
Neil Alexander
9fb45d77fc Add "IfMTU" configuration option to allow selecting TUN/TAP MTU 2018-02-14 12:53:32 +00:00