×

幫助中心

常見問題
域名類
?  域名介紹
?  注冊/續(xù)費
?  域名管理
?  域名過戶
?  域名轉(zhuǎn)移
?  增值服務(wù)
?  域名交易
?  通用網(wǎng)址
?  產(chǎn)品更新日志
郵局類
?  產(chǎn)品簡介
?  產(chǎn)品管理
?  郵件客戶端
?  郵箱用戶操作指南
?  郵箱管理員操作指南
?  產(chǎn)品使用手冊
?  代理商控制臺操作指南
?  產(chǎn)品更新日志
云虛機類
?  購買與升級
?  FTP
?  主機管理
?  技術(shù)問題
?  數(shù)據(jù)庫
?  產(chǎn)品更新日志
ECS云主機類
?  產(chǎn)品更新日志
會員類
?  會員注冊
?  信息修改
?  忘記密碼
?  賬戶實名認證
?  產(chǎn)品更新日志
財務(wù)類
?  后付費計費
?  在線支付
?  線下匯款
?  發(fā)票問題
?  匯款單招領(lǐng)
?  退款問題
?  充值業(yè)務(wù)
?  產(chǎn)品更新日志
ICP備案
?  備案問題快速咨詢通道
?  備案介紹
?  備案賬號
?  ICP備案前準備內(nèi)容
?  ICP備案流程
?  ICP備案操作指導
?  ICP備案信息查看
?  備案合規(guī)核查要求
?  資料下載
?  公安聯(lián)網(wǎng)備案與經(jīng)營性備案
?  各地管局備案通知
?  常見問題
服務(wù)類
?  ICP備案
?  小新服務(wù)
?  產(chǎn)品更新日志
網(wǎng)站定制類
?  網(wǎng)站定制問題
?  網(wǎng)站訪問問題
新辦公類
?  常見問題
?  操作手冊下載
云推送
?  云推送常見問題
速成建站
?  網(wǎng)站訪問問題
?  網(wǎng)站使用問題
?  產(chǎn)品更新日志
SSL證書
?  SSL證書常見問題
?  產(chǎn)品更新日志
新網(wǎng)云產(chǎn)品類
?  新網(wǎng)云WEB應用防火墻
?  新網(wǎng)云DDoS防護
?  云數(shù)據(jù)庫
?  云產(chǎn)品運維
?  內(nèi)容分發(fā)網(wǎng)絡(luò)CDN
?  對象存儲 S3
?  網(wǎng)絡(luò)
資料下載
新手上路

客戶端真實 IP 及端口

  • 作者:
  • 文章來源:新網(wǎng)
  • 點擊數(shù):0
  • 更新時間:2023-11-30 17:49:35

客戶端真實 IP 及端口

XWAF 獲取通過 CDN 等代理服務(wù)器訪問的客戶端真實 IP

一般 CDN 會通過 XFF(X-Forwarded-For) 或 X-Real-IP 來傳遞來訪用戶的真實 IP,但是不排除用戶構(gòu)造該字段偽造請求 IP 的情況出現(xiàn)。

如果想在 WAF 端獲取到來訪用戶的真實的 IP,需要做如下操作

1、打開 WEB 應用防火墻控制臺的【域名管理】,選中需要設(shè)置的域名,點擊【編輯】
2、打開后,開啟【W(wǎng)AF 前是否具有代理】選項,并在【真實 IP 字段設(shè)置】處填入 真實IP 字段(該字段請與您的CDN供應商確認真實 IP 字段)
3、配置完成后,點擊【確定】,即可讓 XWAF 獲取到客戶到客戶端真實 IP。

源站獲取客戶端真實 IP

XWAF 會在回源請求頭中添加 X-Real-IP 和 X-Forwarded-For 兩個字段來傳遞來訪用戶的真實 IP,在源站服務(wù)器中可進行相應的配置以便獲取這兩個字段的值。

X-Real-IP 與 X-Forwarded-For 的區(qū)別

代理服務(wù)器(比如 XWAF)會把請求的來源 IP 寫入 X-Real-IP 字段,然后發(fā)送給源站,這個字段只會有一個 IP 地址;而每經(jīng)過一級代理,代理服務(wù)器會把來源追加到 X-Forwarded-For 中,在多次代理的情況下,則該字段會有多個 IP 地址(真實 IP, 代理服務(wù)器 1, 代理服務(wù)器 2, ...)。

源站獲取客戶端真實端口

XWAF 會在回源請求頭中添加 X-Real-Port 字段來傳遞來訪用戶的真實端口,源站可通過取這個頭部字段的值獲取用戶客戶端真實的端口。

示例配置

對于常見的 HTTP 服務(wù)器或 Web 應用程序,可以通過下面的方法來獲取客戶端真實 IP:

Nginx

對于 Nginx 服務(wù)器,可以使用 $http_x_real_ip 取得 X-Real-IP 字段的值,使用 $http_x_real_port 取得 X-Real-Port 字段的值。利用 Nginx 的 http_realip_module 模塊可以讓 $remote_addr 顯示為客戶端的真實 IP,添加的配置如下:

set_real_ip_from 回源IP段; # 回源IP段請參考“XWAF注意事項&FAQ”,多個IP段需多條指令。 real_ip_header X-Forwarded-For; # 也可以使用 X-Real-IP real_ip_recursive on; # 若WAF前有CDN等代理,需要此指令設(shè)為 on,否則不用。CopyErrorSuccess
若源站的 Nginx 作為代理服務(wù)器,在前文配置的基礎(chǔ)上還可在配置中添加以下內(nèi)容使得后端應用也能通過 X-Real-IP 或 X-Forwarded-For 獲取的客戶端真實 IP:

# ... location / { # ... proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } # 

ASP

Request.ServerVariables("X-Real-IP")

JSP

request.getHeader("X-Real-IP")

PHP

$_SERVER["HTTP_X_FORWARDED_FOR"]

說明:

如果上層鏈路為 CDN 等第三方代理服務(wù)器,有可能無法獲取真實 IP。此種情況需要參照前文WAF 獲取通過 CDN 等代理服務(wù)器訪問的客戶端真實 IP提前在域名設(shè)置中開啟【W(wǎng)AF 前是否具有代理】選項并指定客戶端真實 IP 字段。

新網(wǎng)云WEB應用防火墻

免費咨詢獲取折扣

Loading