예제 #1
0
파일: filter.go 프로젝트: wjybluse/fproxy
func parser(ip net.IP) bool {
	geo, err := gip.New()
	if err != nil {
		logger.Errorf("error when init db,%s", err)
		return false
	}
	country := geo.Lookup(ip)
	if country == nil {
		logger.Error("if address cannot find ,default from china")
		return true
	}
	if strings.Contains(country.String(), "CN") {
		return true
	}
	return false
}
예제 #2
0
파일: geo.go 프로젝트: codeblanche/golibs
func init() {
	cache = make(map[*http.Request]*cacheItem, 0)
	geo, err = geoip.New()
	mutex = &sync.RWMutex{}
}