2010-01-18 5 views
1

버지니아 (캘리포니아) 서버로 동쪽 (서쪽) 해안 방문자에게 서비스하고 싶습니다. 그렇게하기 위해 Maximind에서 Geoipdns와 IP-to-Location 매핑을 사용할 계획입니다. MaxMind는 GeoLite Country와 GeoLite City라는 두 가지 데이터 세트를 무료로 제공합니다. 그러나 어느 쪽도 동/서해안 지역이 정의되어 있지 않습니다. 가능한 솔루션은 GeoLite시의 동/서해안 도시에 대한 모든 IP 범위를 결합하는 스크립트를 작성하는 것입니다.하지만 이는 다소 어리석은 것 같습니다.Geoipdns 및 MaxMind GeoLite 데이터로 동서양 서빙

이렇게하는 것이 가장 좋은 방법은 무엇입니까? 어떤 제안이나 대안?

답변

2

문제는 지나치지 않습니다.

GeoIP City API gives you a state code.

10 분을 소비하고 보조 서버로 보내려는 상태의 목록을 만듭니다. 펄에서

:

my %west_coast_states = qw(ca or wa ut nv ...); 
my $state = ip_to_state_code(); 
if ($west_coast_states{$state}) { 
    # send West Coast states to West Coast server 
} else { 
    # all other users sent to East Coast server 
}