|
|
|
@ -779,10 +779,19 @@ func (a *Agent) segmentConfig() ([]consul.NetworkSegment, error) {
|
|
|
|
|
for _, segment := range config.Segments { |
|
|
|
|
serfConf := consul.DefaultConfig().SerfLANConfig |
|
|
|
|
|
|
|
|
|
serfConf.MemberlistConfig.AdvertiseAddr = segment.Advertise |
|
|
|
|
if segment.Advertise != "" { |
|
|
|
|
serfConf.MemberlistConfig.AdvertiseAddr = segment.Advertise |
|
|
|
|
} else { |
|
|
|
|
serfConf.MemberlistConfig.AdvertiseAddr = a.config.AdvertiseAddr |
|
|
|
|
} |
|
|
|
|
if segment.Bind != "" { |
|
|
|
|
serfConf.MemberlistConfig.BindAddr = segment.Bind |
|
|
|
|
} else { |
|
|
|
|
serfConf.MemberlistConfig.BindAddr = a.config.BindAddr |
|
|
|
|
} |
|
|
|
|
serfConf.MemberlistConfig.AdvertisePort = segment.Port |
|
|
|
|
serfConf.MemberlistConfig.BindAddr = segment.Bind |
|
|
|
|
serfConf.MemberlistConfig.BindPort = segment.Port |
|
|
|
|
|
|
|
|
|
if config.ReconnectTimeoutLan != 0 { |
|
|
|
|
serfConf.ReconnectTimeout = config.ReconnectTimeoutLan |
|
|
|
|
} |
|
|
|
|