@@ -3,6 +3,7 @@ package cluster
|
|||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
"io/fs"
|
"io/fs"
|
||||||
|
"log"
|
||||||
"net/netip"
|
"net/netip"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
|
||||||
@@ -231,26 +232,36 @@ func (r *Ring) setRingOneGatewayAllowedIPs(rp *RingPeer) {
|
|||||||
// peer
|
// peer
|
||||||
rp.AllowCIDR(rp.Address, 32)
|
rp.AllowCIDR(rp.Address, 32)
|
||||||
|
|
||||||
|
log.Println(rp.Node.Name, "0:", rp.Address, regionID, zoneID)
|
||||||
|
|
||||||
// ring1 gateways connect to all other ring1 networks
|
// ring1 gateways connect to all other ring1 networks
|
||||||
r.ForEachZone(func(z *Zone) bool {
|
r.ForEachZone(func(z *Zone) bool {
|
||||||
|
log.Println(rp.Node.Name, "1:", z.Name, z.RegionID(), z.ID)
|
||||||
|
|
||||||
if !z.Is(regionID, zoneID) {
|
if !z.Is(regionID, zoneID) {
|
||||||
subnet := z.RingOnePrefix()
|
subnet := z.RingOnePrefix()
|
||||||
rp.AllowSubnet(subnet)
|
rp.AllowSubnet(subnet)
|
||||||
|
log.Println(rp.Node.Name, "1.1:", rp.PeerConfig.AllowedIPs)
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
})
|
})
|
||||||
|
|
||||||
// ring1 gateways also connect to all ring0 addresses
|
// ring1 gateways also connect to all ring0 addresses
|
||||||
r.ForEachZone(func(z *Zone) bool {
|
r.ForEachZone(func(z *Zone) bool {
|
||||||
|
log.Println(rp.Node.Name, "2:", z.Name, z.RegionID(), z.ID)
|
||||||
z.ForEachMachine(func(p *Machine) bool {
|
z.ForEachMachine(func(p *Machine) bool {
|
||||||
|
log.Println(rp.Node.Name, "2.1:", p.Name, p.IsGateway())
|
||||||
if p.IsGateway() {
|
if p.IsGateway() {
|
||||||
addr, _ := p.RingZeroAddress()
|
addr, _ := p.RingZeroAddress()
|
||||||
rp.AllowCIDR(addr, 32)
|
rp.AllowCIDR(addr, 32)
|
||||||
|
log.Println(rp.Node.Name, "2.2:", rp.PeerConfig.AllowedIPs)
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
})
|
})
|
||||||
return false
|
return false
|
||||||
})
|
})
|
||||||
|
|
||||||
|
log.Println(rp.Node.Name, "3:", rp.PeerConfig.AllowedIPs)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (*Ring) setRingOneNodeAllowedIPs(rp *RingPeer) {
|
func (*Ring) setRingOneNodeAllowedIPs(rp *RingPeer) {
|
||||||
|
|||||||
Reference in New Issue
Block a user