當前位置:首頁 » 操作系統 » geoip資料庫

geoip資料庫

發布時間: 2022-05-27 17:08:28

㈠ 網站建設:如何通過IP區分不同國家的用戶

這是為了讓不同的國度和習慣的訪客看到不一樣的信息, 避免誤導用戶產生多餘的交互行為或者因為頁面的不合理而感到不爽.上圖是最近我在頂部放置的廣告 banner. 上方紅色的是某網站聖誕節促銷活動的Affiliate 廣告, 中國大陸之外地區的訪客可以看到; 下方藍色的是最新發布的與我同行 Apply App 應用廣告, 只有中國大陸地區的訪客可以看到. 區分訪客國家有什麼用?這里是幾個我利用該功能的例子.區分網站功能 這個博客有翻譯文章的功能, 這是為了方便海外訪客閱讀文章, 但對中國人顯得十分多餘. 所以我通過 IP 判斷國家, 對中國大陸地區屏蔽翻譯功能.區分展示廣告 我在網站側邊欄放有廣告, 很多中文廣告對海外流量來說毫無意義, 所以我進行區分展示. 中國大陸地區在側邊欄最下方看到的是拿福能的廣告, 而其他地區看到的是 Google 的廣告. hostucan 是我的一個廣告主, 有英文網站, 也有中文網站, 所以我可以向他提供區分展示服務, 免得浪費流量.屏蔽布點服務 海外有很多好的服務平台, 在網站上布點即可採集數據和分享文章. 但很不幸, 因為某些原因, 他們在國內展示效果並不好, 不但沒有起到應有效果, 還讓頁面載入時間變長. 可以對大陸訪客屏蔽這些布點.在php 通過 IP 區分國家如何用 PHP 通過 IP 區分國家和地區呢? Maxmind.com 提供一套 GeoIP 的解決方案, 只需要簡單幾步即可在 PHP 中通過 IP 判斷訪客的國家.1. 下載資料庫和 PHP 庫文件下載GeoID.dat.gz, 解壓為 GeoIP.dat 文件.下載geoip.inc.2. 通過 PHP 代碼獲取國家信息 以下是一段示範代碼, 演示如何獲取國家代號和國家名稱.<?php // 引入 PHP 庫文件include("geoip.inc"); // 打開本地資料庫, 數據保存在 GeoIP 文件中.$geoData= geoip_open('GeoIP.dat', GEOIP_STANDARD); // 獲取國家 IP$countryCode= geoip_country_code_by_addr($geoData,$_SERVER['REMOTE_ADDR']); // 獲取國家名稱$countryName= geoip_country_name_by_addr($geoData,$_SERVER['REMOTE_ADDR']); // 關閉本地資料庫 geoip_close($geoData); ?>在WordPress 中通過 IP 區分國家既然PHP 上使用沒問題, WordPress 肯定也是 Okay 的. 看看我是怎麼使用的.1. 放置資料庫文件 將GeoIP.dat 解壓到 WordPress 根目錄中. (你可以在這個目錄找到 wp-content.php 文件)2. 編寫調用介面 在主題目錄中新建文件夾 include, 將 geoip.inc 放置在新建文件夾中. 並在該文件夾新建文件 geoip.php 文件內容如下.<?php include('geoip.inc'); global$countryCode; $geoData= geoip_open('GeoIP.dat', GEOIP_STANDARD);$countryCode= geoip_country_code_by_addr($geoData,$_SERVER['REMOTE_ADDR']); geoip_close($geoData); ?>這里只取國家代號作為判別依據. 並且國家代號是全局變數, 以避免頁面多處判斷需要反復訪問 GeoIP.dat 獲取信息, 減少程序開銷.2. 調用介面, 獲取國家代號 3. 打開 header.php 文件, 在文件頂部加入代碼如下.<?phpinclude('include/geoip.php');?>4. 使用國家代號 在主題中調用代碼, 例子如下.<?

㈡ 如何設置根據不同的IP地址所在地域訪問不同的服務

您可以到時代互聯的官網首頁,然後右上角又一個幫助中心,然後在那裡有很多關於域名、伺服器等問題的解決方法的,希望可以幫到您。

㈢ goaccess用的什麼資料庫

一,安裝GoAccess
安裝goaccess前需要安裝其依賴包,可以在goaccess的官網上找到依賴access.io/ ,以下是各系統所需的依賴包。
GoAccess Dependencies

Distro
NCurses
GLib >= 2.0.0
GeoIP (optional)
Tokyo Cabinet (optional)

Ubuntu/Debian libncursesw5-dev libglib2.0-dev libgeoip-dev libtokyocabinet-dev
Fedora/RHEL/CentOS ncurses-devel glib2-devel geoip-devel tokyocabinet-devel
Arch Linux ncurses glib2 geoip compile from source
Gentoo sys-libs/ncurses dev-libs/glib:2 dev-libs/geoip dev-db/tokyocabinet

java 使用geoip需要導入什麼包

GeoIP資料庫下載地址:http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
API 源碼下載
http://geolite.maxmind.com/download/geoip/api/java/

下載解壓:有一些測試類 「*test.java」,如 CountryLookupTest.java
將所有源碼拷貝在一個java工程下面...

改下源碼的Geoip.dat文件的目錄 :我是放在C盤;
代碼:

Java代碼
class CountryLookupTest {
public static void main(String[] args) {
try {
// String sep = System.getProperty("file.separator");
//
// // Uncomment for windows
// String dir = System.getProperty("user.dir");
//
// // Uncomment for Linux
// //String dir = "/usr/local/share/GeoIP";
//
// String dbfile = dir + sep + "GeoIP.dat";
// You should only call LookupService once, especially if you use
// GEOIP_MEMORY_CACHE mode, since the LookupService constructor
// takes up
// resources to load the GeoIP.dat file into memory
// LookupService cl = new
// LookupService(dbfile,LookupService.GEOIP_STANDARD);

LookupService cl = new LookupService("c:\\GeoIP.dat",
LookupService.GEOIP_MEMORY_CACHE);

System.out.println(cl.getCountry("159.226.115.22").getCode());
System.out.println(cl.getCountry("159.226.115.22").getName());
System.out.println(cl.getCountry("183.16.200.127").getName());
System.out.println(cl.getCountry("213.52.50.8").getName());
System.out.println(cl.getCountry("200.21.225.82").getName());

cl.close();
} catch (IOException e) {
System.out.println("IO Exception");
}
}
}

㈤ 如何在Linux上按國別阻止網路流量

作為一名維護生產環境Linux伺服器的系統管理員,在有些情況下,你需要根據地理位置,有選擇性地阻止或允許網路流量。比如說,你遇到了拒絕服務攻擊,這些攻擊主要源自在某一個國家注冊的IP地址。在其他情況下,出於安全方面的原因,你又想要阻止外國來歷不明SSH登錄請求;或者貴公司對在線視頻擁有發行權,因而只可以分發給某些國家;或者由於地域限制方面的公司政策,你需要防止本地主機將文檔上傳到非美國遠程雲存儲系統。

所有這些場景都需要能夠安裝一個防火牆,可以按國別對流量進行過濾。有幾種方法可以做到這一點。舉例說,你可以使用TCP包裝器(TCP wrapper),針對個別應用程序(比如SSH、NFS和httpd)設置有條件的阻止。其缺點是,你想要保護的那個應用程序在開發當初必須支持TCP包裝器。此外,TCP包裝器並非普遍出現在不同的平台上(比如說,Arch Linux已停止對TCP包裝器的支持)。另一種辦法就是,利用基於國家的GeoIP信息來設置ipset,然後將它運用於iptables規則。後一種方法更有希望,因為基於iptables的過濾與應用程序無關,而且易於設置。
我在本教程中將介紹另一種基於iptables的GeoIP過濾機制,這種機制實施了xtables-addons。有些讀者對它還不熟悉,所以有必要先介紹一下,xtables-addons是一套面向netfilter/iptables的擴展。xtables-addons內含了一個名為xt_geoip的模塊,該模塊擴展了netfilter/iptables的功能,可以根據來源/目的地國家,過濾、NAT或管理數據包。如果你想使用xt_geoip,不需要重新編譯內核或iptables,只需要構建xtables-addons模塊,並使用當前的內核構建環境(/lib/moles/`uname -r`/build)。也不需要重啟。一旦你構建並安裝好了xtables-addons,xt_geoip立即就可以與iptables結合使用。
至於xt_geoip和ipset之間的區別,官方來源(http://xtables-addons.sourceforge.net/geoip.php)提到,xt_geoip在內存佔用空間方面少於ipset。不過在匹配速度方面,基於散列的ipset可能具有優勢。
在本教程其餘部分,我會演示如何使用iptables/xt_geoip,根據來源/目的地國家,阻止網路流量。
將Xtables-addons安裝到Linux上
下面介紹如何編譯xtables-addons,並將它安裝到不同的Linux平台上。
想構建xtables-addons,你就需要先安裝幾個依賴程序包。
·將依賴程序包安裝到Debian、Ubuntu或Linux Mint上
$ sudo apt-get install iptables-dev xtables-addons-common libtext-csv-xs-perl pkg-config

·將依賴程序包安裝到CentOS、RHEL或Fedora上
CentOS/RHEL 6需要先安裝EPEL軟體庫(面向perl-Text-CSV_XS)。
$ sudo yum install gcc-c++ make automake kernel-devel-`uname -r` wget unzip iptables-devel perl-Text-CSV_XS

編譯和安裝Xtables-addons
從官方網站(http://xtables-addons.sourceforge.net)下載最新的xtables-addons源代碼,然後構建/安裝它,如下所示。
$wget http://downloads.sourceforge.net/project/xtables-addons/Xtables-addons/xtables-addons
-2.10.tar.xz
$ tar xf xtables-addons-2.10.tar.xz
$ cd xtables-addons-2.10
$ ./configure
$ make
$ sudo make install

請注意:如果是默認情況下已啟用SELinux的基於紅帽的系統(CentOS、RHEL、Fedora),有必要調整SELinux策略,如下所示。要不然,SELinux會阻止iptables裝入xt_geoip模塊。
$ sudo chcon -vR --user=system_u /lib/moles/$(uname -r)/extra/*.ko
$ sudo chcon -vR --type=lib_t /lib64/xtables/*.so

為Xtables-addons安裝GeoIP資料庫
下一步是安裝GeoIP資料庫,xt_geoip將用到該資料庫,用於IP與國別映射。很方便的是,xtables-addons源程序包隨帶兩個幫助腳本,可分別用來從MaxMind下載GeoIP資料庫,並將它轉換成xt_geoip可識別的二進制格式。這些腳本位於源程序包裡面的geoip文件夾下面。按照下列說明,即可構建GeoIP資料庫,並將它安裝到你系統上。
$ cd geoip
$ ./xt_geoip_dl
$ ./xt_geoip_build GeoIPCountryWhois.csv
$ sudo mkdir -p /usr/share/xt_geoip
$ sudo cp -r {BE,LE} /usr/share/xt_geoip

據MaxMind聲稱,其GeoIP資料庫的准確性達到99.8%,資料庫更每月都更新。為了確保本地安裝的GeoIP資料庫內容最新,你就需要設置每月執行的計劃任務,以便每月更新一次本地GeoIP資料庫。
阻止來自或發往某個國家的網路流量
一旦xt_geoip模塊和GeoIP資料庫都已安裝好,你就可以立即使用iptables命令中的geoip匹配選項。
$ sudo iptables -m geoip --src-cc country[,country...] --dst-cc country[,country...]

你想要阻止的國家使用兩個字母ISO3166代碼來指定,比如說US(美國)、CN(中國)、IN(印度)和FR(法國)。
比如說,如果你想阻止來自葉門(YE)和尚比亞(ZM)的入站流量,下面這個iptables命令就能實現。
$ sudo iptables -I INPUT -m geoip --src-cc YE,ZM -j DROP

如果你想阻止發往中國(CN)的出站流量,只要運行下面這個命令。
$ sudo iptables -A OUTPUT -m geoip --dst-cc CN -j DROP

匹配條件也可以被「抵消」,只要將「!」放在「--src-cc」或「--dst-cc」的前面。比如說:
如果你想在伺服器上阻止所有非美國的入站流量,可以運行這個命令:
$ sudo iptables -I INPUT -m geoip ! --src-cc US -j DROP

針對Firewall-cmd用戶
像CentOS/RHEL 7或Fedora這一些發行版已將iptables換成firewalld,作為默認防火牆伺服器。在這類系統上,你同樣可以利用xt_geoip,使用firewall-cmd阻止流量。上面三個例子可以用firewall-cmd來改寫,如下所示。
$ sudo firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -m geoip --src-cc YE,ZM -j DROP
$ sudo firewall-cmd --direct --add-rule ipv4 filter OUTPUT 0 -m geoip --dst-cc CN -j DROP
$ sudo firewall-cmd --direct --add-rule ipv4 filter INPUT 0 -m geoip ! --src-cc US -j DROP

結束語
我在本教程中介紹了iptables/xt_geoip,這是一種簡單方法,可以根據來源/目的地國家,對網路數據包進行過濾。如果需要的話,可以將這件有用的武器部署到你的防火牆系統中。最後提醒一句,我應該提到:基於GeoIP的流量過濾並不是在你伺服器上阻止某些國家的萬無一失的方法。GeoIP資料庫天生就不準確/不完整,如果使用VPN、Tor或任何受到危及的中繼主機,就很容易欺騙來源/目的地國家。基於地域的過濾甚至會阻止本不該被禁止的合法流量。明白這個局限性後,再決定將它部署到你的生產環境中也不遲。

㈥ 怎麼用geoip屏蔽日本訪客,php的形式來判斷。我找到個代碼,但它是允許日本的,怎麼改成禁止日本

$country=='jp'修改為
$country != 'jp'
好了,就這么簡單~

㈦ from geoip2 import database什麼意思

from geoip import database
從更多的地方導入資料庫

㈧ GeoIp2 資料庫讀取問題,我是在eclipse上編寫的java jdk是7,生成DatabaseReader實例時報錯

缺少jar包:
maxmind-db-1.0.0.jar
jackson-core-2.5.1.jar
jackson-databind-2.5.1.jar
jackson-annotations-2.5.1.jar

可以去MAVEN 庫 搜索下載,記住:maven工程可以看POM.XML文件,找到項目的依賴包。

㈨ 幫忙翻譯

該庫GeoIP模塊本來寫djeyl為阿莫西林,並改寫了從無到有,由lopan為阿莫西林國防部十庫GeoIP是一個資料庫的物理位置, IP地址,以及這個單元,讓您看參賽球員。

㈩ 如何通過命令行查找一個IP的地理位置信息

如果你想查找一個IP地址在地球上的實際地理位置,現在已經有好多在線的GeoIp查找服務你可以利用(例如geoiptool.com)。這些在線服務大多數都是由免費的像MaxMind這樣的GeoIP資料庫提供支持。在使用這些基於網頁的服務同時,這里也有一些不同的方法來查詢GeoIP資料庫,尤其是Linux命令行。http://www.geekfan.net/7863/ 自己去看吧 我不太專業。

熱點內容
c語言小數四捨五入 發布:2024-05-19 16:23:28 瀏覽:524
資料庫被注入攻擊 發布:2024-05-19 16:21:31 瀏覽:834
微信忘記密碼從哪裡看 發布:2024-05-19 16:06:37 瀏覽:32
寶馬x4貸款買哪個配置好 發布:2024-05-19 15:56:03 瀏覽:22
微控pid演算法 發布:2024-05-19 15:46:31 瀏覽:135
雲盤視頻解壓密碼 發布:2024-05-19 15:23:17 瀏覽:848
和平精英怎麼改地區位置安卓 發布:2024-05-19 15:19:05 瀏覽:286
酒店的路由器如何配置 發布:2024-05-19 15:10:44 瀏覽:500
rpgmaker腳本 發布:2024-05-19 14:48:58 瀏覽:407
hds存儲虛擬化 發布:2024-05-19 14:47:09 瀏覽:21