diff --git a/worker/provider.go b/worker/provider.go index b6477b2..cd89472 100644 --- a/worker/provider.go +++ b/worker/provider.go @@ -176,6 +176,7 @@ func newMirrorProvider(mirror mirrorConfig, cfg *Config) mirrorProvider { logDir: logDir, logFile: filepath.Join(logDir, "latest.log"), useIPv6: mirror.UseIPv6, + useIPv4: mirror.UseIPv4, interval: time.Duration(mirror.Interval) * time.Minute, retry: mirror.Retry, timeout: time.Duration(mirror.Timeout) * time.Second, diff --git a/worker/two_stage_rsync_provider.go b/worker/two_stage_rsync_provider.go index 4c1c0c0..c5721d1 100644 --- a/worker/two_stage_rsync_provider.go +++ b/worker/two_stage_rsync_provider.go @@ -19,7 +19,7 @@ type twoStageRsyncConfig struct { rsyncTimeoutValue int rsyncEnv map[string]string workingDir, logDir, logFile string - useIPv6 bool + useIPv6, useIPv4 bool interval time.Duration retry int timeout time.Duration @@ -137,6 +137,8 @@ func (p *twoStageRsyncProvider) Options(stage int) ([]string, error) { if p.useIPv6 { options = append(options, "-6") + } else if p.useIPv4 { + options = append(options, "-4") } if p.excludeFile != "" {