『壹』 伺服器IP、內網IP和外網IP有什麼聯系分別是怎樣獲得的
公網ip具有世界范圍的唯一性,而內網ip只在區域網內部具有唯一性。並且,一個區域網里所有電腦的內網IP是互不相同的,但共用一個外網IP。
就像我們前面所說的你所在學校的校名在整個世界上只有一個,但是你學校裡面的A棟大樓3層3號教室只有在你的校園內部才具有唯一性。別的學校也有A棟大樓3層3號教室。你只能跟快遞小哥說請幫我把包裹送到xx大學,而不能說請幫我把包裹送到A棟大樓3層3號教室。
在區域網中,每台電腦都可以自己分配自己的IP,但是這個IP只在區域網中有效。而如果你將電腦連接到互聯網,你的網路提供商的伺服器會為你分配一個IP地址,這個IP地址才是你在外網的IP。兩個IP同時存在,一個對內,一個對外。
(1)怎麼取得伺服器ip擴展閱讀
內網和外網之間的通信(埠映射原理)
埠映射是 NAT 的一種,它將外網主機的 IP 地址的一個埠映射到內網中一台機器,提供相應的服務。當用戶訪問該 IP 的這個埠時,伺服器自動將請求映射到對應區域網內部的機器上。
A 電腦的 IP 是區域網 IP(192.168.31.11),這個 IP(192.168.31.11)是從路由器的 lan口分配的。當我們上網路的時候,經過路由器的 wan口,進行相應的IP、埠轉化:192.168.31.11:80 -> 10.221.0.24:8080,所以,從 wan口出去的地址為:10.221.0.24:8080。
最後,經過運營商,運營商那邊會做相應的埠映射(而且是動態埠映射),子網 IP(10.221.0.24:8080)轉化為公網 IP(128.0.0.1:8888),通過這個公網 IP 去訪問網路伺服器。
同理,B 的過程也是一樣。通過這樣的層層埠映射,最終保證地址(IP + 埠)的唯一性。A 和 B 訪問網路伺服器,盡管它們的區域網 IP 是一樣的,但是最終它們訪問網路的地址(IP + 埠)是唯一的,所以,網路伺服器回復時,原路返回時能夠區分到底給誰回。
『貳』 如何獲取客戶端和伺服器ip地址
您好,.X.XXX.XXX系列IP,而這個函數獲取的是區域網網關出口的IP地址,如果訪問者使用代理伺服器,將不獲取代理伺服器的IP,而是獲取訪問者網關的真實IP。如果將這個函數應用到限IP訪問的網頁中,別人即使通過限IP訪問段中的代理伺服器,也不能訪問該頁面。
下面提供一個函數:<?php
// 定義一個函數getIP()
function getIP(){global $ip;
if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if(getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");else$ip = "Unknow";
return $ip;}
// 使用方法:
echo getIP();?>
getenv("REMOTE_ADDR")用來取得客戶端的 IP 地址,但如果客戶端是使用代理伺服器來訪問,那取到的就是代理伺服器的 IP 地址,而不是真正的客戶端 IP 地址。要想透過代理伺服器取得客戶端的真實 IP 地址,就要使用 getenv("HTTP_X_FORWARDED_FOR") 來讀取。
但是如果客戶端沒有通過代理伺服器來訪問,那麼用getenv("HTTP_X_FORWARDED_FOR") 取到的值將是空的。
else if(getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
表示如果getenv("HTTP_X_FORWARDED_FOR") 取到的值存在不為空(即客戶端使用代理伺服器的情況下),則變數$ip等於getenv("HTTP_X_FORWARDED_FOR") 取到的真實IP值。
如果上面的else if(getenv("HTTP_X_FORWARDED_FOR"))取得的值為空(即沒有使用代理伺服器),則不會執行下面的$ip = getenv("HTTP_X_FORWARDED_FOR");這一行語句。
這種情況下已經確認客戶端沒有使用代理伺服器,從而通過
else if(getenv("REMOTE_ADDR"))
這兩行語句獲得客戶端的IP地址也是真實的IP地址。
『叄』 怎麼獲取伺服器上的ip地址和埠號
在伺服器中要查看埠,可以使用Netstat命令:
1、依次點擊「開始→運行」,鍵入「cmd」並回車,打開命令提示符窗口。
2、在命令提示符狀態下鍵入「netstat -a -n」,按下回車鍵後就可以看到以數字形式顯示的TCP和UDP連接的埠號及狀態。
Netstat命令用法如下:
命令格式:Netstat -a -e -n -o -s-an
-a 表示顯示所有活動的TCP連接以及計算機監聽的TCP和UDP埠。
-e 表示顯示乙太網發送和接收的位元組數、數據包數等。
-n 表示只以數字形式顯示所有活動的TCP連接的地址和埠號。
-o 表示顯示活動的TCP連接並包括每個連接的進程ID(PID)。
-s 表示按協議顯示各種連接的統計信息,包括埠號。
-an 查看所有開放的埠
『肆』 怎樣獲取伺服器IP地址
獲取伺服器IP地址方法詳見:http://jingyan..com/article/2f9b480dac4e8d41cb6cc2c9.html
『伍』 怎樣填寫DNS伺服器IP地址怎樣獲得它的地址
怎樣填寫DNS伺服器IP地址,怎樣獲得它的地址,解決辦法:
1.首先,右鍵點擊電腦桌面的網上鄰居,然後選擇屬性選項。
『陸』 怎麼樣獲得自己電腦的伺服器ip地址
電腦右下角有一個「本地連接」的標志,你右鍵然後點擊「狀態」,會出現一個「本地連接狀態」的界面,點擊「支持」選項卡,就可以看到你的本地IP了。
望幫到樓主。
『柒』 如何獲取伺服器的IP地址
1、右鍵單擊「網上鄰居」選擇「屬性」,打開網路連接屬性。
2、在右側的「網路任務」欄中點擊「創建一個新的連接。
3、打開新建連接向導,點「下一步」。在 「網路連接屬性」選擇里,點擊「設置高級連接」,點擊「下一步」,然後,在接下來的「高級連接選項」中選擇「接受傳入的連接」。點擊「下一步」。勾尋直接並行,點擊「下一步」。
4、勾尋允許虛擬專用連接」,點「下一步」。
5、創建一個允許連接的用戶許可權。點擊「添加」按鈕,輸入雙魚IP轉換器賬戶和密碼後點「確定」。點擊「下一步」繼續。
6、在「網路軟體」中勾選需要用到的協議,一般保持默認即可。點擊「下一步」後,伺服器就搭建完成了。
選擇「開始」→「設置」→「控制面板」→「網路連接」→「創建一個新的連接」→「下一步」→「連接到我的工作場所的網路」→「下一步」→「虛擬專用網路連接」,按說明完成後面的操作即可。