Initial "hardcoded" version of mapping.
This commit is contained in:
31
mapping/map.go
Normal file
31
mapping/map.go
Normal file
@ -0,0 +1,31 @@
|
||||
package mapping
|
||||
|
||||
import (
|
||||
"git.eve.moe/jackyyf/navigator/ipgeo"
|
||||
)
|
||||
|
||||
const (
|
||||
// Server IDs
|
||||
WHOLESALE_INTERNET_10GE = "xe-mci1-us"
|
||||
HETZNER_FSN_1GE = "ge-fsn1-de"
|
||||
HETZNER_HEL_1GE = "ge-hel1-fi"
|
||||
default_server = WHOLESALE_INTERNET_10GE
|
||||
|
||||
// Served domain suffix
|
||||
CHINA_MAINLAND_SUFFIX = ".eveedge.link"
|
||||
GLOBAL_SUFFIX = ".edge.eve.network"
|
||||
default_suffix = GLOBAL_SUFFIX
|
||||
)
|
||||
|
||||
// Get returns the edge node that should be used for client.
|
||||
func Get(ip string) string {
|
||||
db := ipgeo.Get()
|
||||
info_en, err := db.FindInfo(ip, "EN")
|
||||
if err != nil {
|
||||
return default_server + default_suffix
|
||||
}
|
||||
if info_en.CountryCode == "CN" {
|
||||
return default_server + CHINA_MAINLAND_SUFFIX
|
||||
}
|
||||
return default_server + GLOBAL_SUFFIX
|
||||
}
|
Reference in New Issue
Block a user