如何獲取真實(shí)ip?普通的網(wǎng)絡(luò)應(yīng)用服務(wù)器是可以通過解析X-Forwarded-For記錄獲取客戶端的真實(shí)IP。X-Forwarded-For(XFF)是用來識(shí)別通過HTTP代理或負(fù)載均衡方式連接到Web服務(wù)器的客戶端最原始的IP地址的HTTP請(qǐng)求頭字段。
下面,恒訊科技小編我分享3個(gè)獲取真實(shí)ip的方法,主要是描述Nginx、IIS 7和Apache服務(wù)器的X-Forwarded-For配置方案。
一、Nginx服務(wù)器的配置方案
1、使用Nginx服務(wù)器時(shí),需要http_realip_module模塊來獲取客戶端的真實(shí)ip。默認(rèn)安裝的Nginx不包含http_realip_module模塊,我們需要重新編譯Nginx并添加--with-http_realip_module。
2、修改nginx.conf。
vi /etc/nginx/nginx.conf
修改紅色部分如下:
set_real_ip_from ip地址;//ip地址為WAF的回源IP地址,可在Web應(yīng)用防火墻控制臺(tái)的實(shí)例管理列表的回源IP段中查看。
real_ip_header X-Forwarded-For;
3、重啟 Nginx。
服務(wù) nginx 重啟
二、IIS 7服務(wù)器的配置方案
1、下載并安裝插F5XForwardedFor模塊。根據(jù)我們服務(wù)器的操作系統(tǒng)版本,將or目錄下的F5XFFHttpModule.dlland復(fù)制到某個(gè)目錄下。這里假設(shè)它是確保IIS進(jìn)程對(duì)該目錄具有讀取權(quán)限。
F5XFFHttpModule.ini x86\Release x64\Release C:\F5XForwardedFor
2、選擇【IIS服務(wù)器】,雙擊【模塊】功能。
3、單擊 [配置本機(jī)模塊] 。
4、在彈出的框中點(diǎn)擊【注冊】。
5、添加下載的DLL文件,如下圖:
6、添加完成后勾選,點(diǎn)擊【確定】。
7、在IIS服務(wù)器的“ISAPI and CGI Restrictions”中,添加兩個(gè)DLL文件,并將限制設(shè)置為Allow。
8、重啟IIS服務(wù)器,等待配置生效。
三、Apache服務(wù)器的配置方案
1、Apache v2.4自帶mod_remoteip,可以獲取客戶端的真實(shí)ip。
2、添加以下文件進(jìn)行配置
# 因?yàn)?/usr/local/apache/conf/httpd.conf
啟用模塊
包括 conf/extra/httpd-remoteip.conf
# 因?yàn)?/usr/local/apache/conf/extra/httpd-remoteip.conf
添加以下內(nèi)容
LoadModule remoteip_module modules/mod_remoteip.so
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy IP地址//IP地址為WAF的回源IP地址,可在Web應(yīng)用防火墻控制臺(tái)的實(shí)例管理列表的回源IP段中查看。
3、添加完成后,重啟Apache。
/usr/sbin/apachectl -k 重啟
以上就是“如何獲取真實(shí)ip”的3個(gè)方法,希望能幫助到大家!
Copyright ? 2013-2020. All Rights Reserved. 恒訊科技 深圳市恒訊科技有限公司 粵ICP備20052954號(hào) IDC證:B1-20230800.移動(dòng)站