mirror of
https://github.com/XTLS/Xray-core.git
synced 2024-11-27 01:13:01 +00:00
e18b52a5df
* implement WireGuard protocol for Outbound * upload license * fix build for openbsd & dragonfly os * updated wireguard-go * fix up * switch to another wireguard fork * fix * switch to upstream * open connection through internet.Dialer (#1) * use internet.Dialer * maybe better code * fix * real fix Co-authored-by: nanoda0523 <nanoda0523@users.noreply.github.com> * fix bugs & add ability to recover during connection reset on UDP over TCP parent protocols * improve performance improve performance * dns lookup endpoint && remove unused code * interface address fallback * better code && add config test case Co-authored-by: nanoda0523 <nanoda0523@users.noreply.github.com>
50 lines
1.3 KiB
Go
50 lines
1.3 KiB
Go
package conf_test
|
|
|
|
import (
|
|
"testing"
|
|
|
|
. "github.com/xtls/xray-core/infra/conf"
|
|
"github.com/xtls/xray-core/proxy/wireguard"
|
|
)
|
|
|
|
func TestWireGuardOutbound(t *testing.T) {
|
|
creator := func() Buildable {
|
|
return new(WireGuardConfig)
|
|
}
|
|
|
|
runMultiTestCase(t, []TestCase{
|
|
{
|
|
Input: `{
|
|
"secretKey": "uJv5tZMDltsiYEn+kUwb0Ll/CXWhMkaSCWWhfPEZM3A=",
|
|
"address": ["10.1.1.1", "fd59:7153:2388:b5fd:0000:0000:1234:0001"],
|
|
"peers": [
|
|
{
|
|
"publicKey": "6e65ce0be17517110c17d77288ad87e7fd5252dcc7d09b95a39d61db03df832a",
|
|
"endpoint": "127.0.0.1:1234"
|
|
}
|
|
],
|
|
"mtu": 1300,
|
|
"workers": 2
|
|
}`,
|
|
Parser: loadJSON(creator),
|
|
Output: &wireguard.DeviceConfig{
|
|
// key converted into hex form
|
|
SecretKey: "b89bf9b5930396db226049fe914c1bd0b97f0975a13246920965a17cf1193370",
|
|
Endpoint: []string{"10.1.1.1", "fd59:7153:2388:b5fd:0000:0000:1234:0001"},
|
|
Peers: []*wireguard.PeerConfig{
|
|
{
|
|
// also can read from hex form directly
|
|
PublicKey: "6e65ce0be17517110c17d77288ad87e7fd5252dcc7d09b95a39d61db03df832a",
|
|
PreSharedKey: "0000000000000000000000000000000000000000000000000000000000000000",
|
|
Endpoint: "127.0.0.1:1234",
|
|
KeepAlive: 0,
|
|
AllowedIps: []string{"0.0.0.0/0", "::0/0"},
|
|
},
|
|
},
|
|
Mtu: 1300,
|
|
NumWorkers: 2,
|
|
},
|
|
},
|
|
})
|
|
}
|