Remove VPN_PMTUD option
This commit is contained in:
@@ -77,7 +77,6 @@ ENV VPN_SERVICE_PROVIDER=pia \
|
|||||||
VPN_TYPE=openvpn \
|
VPN_TYPE=openvpn \
|
||||||
# Common VPN options
|
# Common VPN options
|
||||||
VPN_INTERFACE=tun0 \
|
VPN_INTERFACE=tun0 \
|
||||||
VPN_PMTUD=on \
|
|
||||||
# OpenVPN
|
# OpenVPN
|
||||||
OPENVPN_ENDPOINT_IP= \
|
OPENVPN_ENDPOINT_IP= \
|
||||||
OPENVPN_ENDPOINT_PORT= \
|
OPENVPN_ENDPOINT_PORT= \
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ type VPN struct {
|
|||||||
Provider Provider `json:"provider"`
|
Provider Provider `json:"provider"`
|
||||||
OpenVPN OpenVPN `json:"openvpn"`
|
OpenVPN OpenVPN `json:"openvpn"`
|
||||||
Wireguard Wireguard `json:"wireguard"`
|
Wireguard Wireguard `json:"wireguard"`
|
||||||
PMTUD *bool `json:"pmtud"`
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO v4 remove pointer for receiver (because of Surfshark).
|
// TODO v4 remove pointer for receiver (because of Surfshark).
|
||||||
@@ -55,7 +54,6 @@ func (v *VPN) Copy() (copied VPN) {
|
|||||||
Provider: v.Provider.copy(),
|
Provider: v.Provider.copy(),
|
||||||
OpenVPN: v.OpenVPN.copy(),
|
OpenVPN: v.OpenVPN.copy(),
|
||||||
Wireguard: v.Wireguard.copy(),
|
Wireguard: v.Wireguard.copy(),
|
||||||
PMTUD: gosettings.CopyPointer(v.PMTUD),
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -64,7 +62,6 @@ func (v *VPN) OverrideWith(other VPN) {
|
|||||||
v.Provider.overrideWith(other.Provider)
|
v.Provider.overrideWith(other.Provider)
|
||||||
v.OpenVPN.overrideWith(other.OpenVPN)
|
v.OpenVPN.overrideWith(other.OpenVPN)
|
||||||
v.Wireguard.overrideWith(other.Wireguard)
|
v.Wireguard.overrideWith(other.Wireguard)
|
||||||
v.PMTUD = gosettings.OverrideWithPointer(v.PMTUD, other.PMTUD)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v *VPN) setDefaults() {
|
func (v *VPN) setDefaults() {
|
||||||
@@ -72,7 +69,6 @@ func (v *VPN) setDefaults() {
|
|||||||
v.Provider.setDefaults()
|
v.Provider.setDefaults()
|
||||||
v.OpenVPN.setDefaults(v.Provider.Name)
|
v.OpenVPN.setDefaults(v.Provider.Name)
|
||||||
v.Wireguard.setDefaults(v.Provider.Name)
|
v.Wireguard.setDefaults(v.Provider.Name)
|
||||||
v.PMTUD = gosettings.DefaultPointer(v.PMTUD, true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (v VPN) String() string {
|
func (v VPN) String() string {
|
||||||
@@ -90,8 +86,6 @@ func (v VPN) toLinesNode() (node *gotree.Node) {
|
|||||||
node.AppendNode(v.Wireguard.toLinesNode())
|
node.AppendNode(v.Wireguard.toLinesNode())
|
||||||
}
|
}
|
||||||
|
|
||||||
node.Appendf("Path MTU discovery update: %s", gosettings.BoolToYesNo(v.PMTUD))
|
|
||||||
|
|
||||||
return node
|
return node
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -113,10 +107,5 @@ func (v *VPN) read(r *reader.Reader) (err error) {
|
|||||||
return fmt.Errorf("wireguard: %w", err)
|
return fmt.Errorf("wireguard: %w", err)
|
||||||
}
|
}
|
||||||
|
|
||||||
v.PMTUD, err = r.BoolPtr("VPN_PMTUD")
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
|
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -47,7 +47,6 @@ func (l *Loop) Run(ctx context.Context, done chan<- struct{}) {
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
tunnelUpData := tunnelUpData{
|
tunnelUpData := tunnelUpData{
|
||||||
PMTUD: *settings.PMTUD,
|
|
||||||
serverIP: connection.IP,
|
serverIP: connection.IP,
|
||||||
vpnType: settings.Type,
|
vpnType: settings.Type,
|
||||||
serverName: connection.ServerName,
|
serverName: connection.ServerName,
|
||||||
|
|||||||
@@ -18,10 +18,6 @@ type tunnelUpData struct {
|
|||||||
// vpnIntf is the name of the VPN network interface
|
// vpnIntf is the name of the VPN network interface
|
||||||
// which is used both for port forwarding and MTU discovery
|
// which is used both for port forwarding and MTU discovery
|
||||||
vpnIntf string
|
vpnIntf string
|
||||||
// Path MTU discovery fields:
|
|
||||||
// PMTUD indicates whether to perform Path MTU Discovery and
|
|
||||||
// adjust the VPN interface MTU accordingly.
|
|
||||||
PMTUD bool
|
|
||||||
// serverIP is used for path MTU discovery
|
// serverIP is used for path MTU discovery
|
||||||
serverIP netip.Addr
|
serverIP netip.Addr
|
||||||
// vpnType is used for path MTU discovery to find the protocol overhead.
|
// vpnType is used for path MTU discovery to find the protocol overhead.
|
||||||
@@ -38,14 +34,12 @@ type tunnelUpData struct {
|
|||||||
func (l *Loop) onTunnelUp(ctx context.Context, data tunnelUpData) {
|
func (l *Loop) onTunnelUp(ctx context.Context, data tunnelUpData) {
|
||||||
l.client.CloseIdleConnections()
|
l.client.CloseIdleConnections()
|
||||||
|
|
||||||
if data.PMTUD {
|
mtuLogger := l.logger.New(log.SetComponent("MTU discovery"))
|
||||||
mtuLogger := l.logger.New(log.SetComponent("MTU discovery"))
|
mtuLogger.Info("finding maximum MTU, this can take up to 4 seconds")
|
||||||
mtuLogger.Info("finding maximum MTU, this can take up to 4 seconds")
|
err := updateToMaxMTU(ctx, data.vpnIntf, data.serverIP, data.vpnType,
|
||||||
err := updateToMaxMTU(ctx, data.vpnIntf, data.serverIP, data.vpnType,
|
l.netLinker, mtuLogger)
|
||||||
l.netLinker, mtuLogger)
|
if err != nil {
|
||||||
if err != nil {
|
l.logger.Error(err.Error())
|
||||||
l.logger.Error(err.Error())
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, vpnPort := range l.vpnInputPorts {
|
for _, vpnPort := range l.vpnInputPorts {
|
||||||
@@ -64,7 +58,7 @@ func (l *Loop) onTunnelUp(ctx context.Context, data tunnelUpData) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
err := l.publicip.RunOnce(ctx)
|
err = l.publicip.RunOnce(ctx)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
l.logger.Error("getting public IP address information: " + err.Error())
|
l.logger.Error("getting public IP address information: " + err.Error())
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user