導航:首頁 > 配伺服器 > socket怎麼知道伺服器的ip

socket怎麼知道伺服器的ip

發布時間:2022-06-21 10:03:51

java 如何從收到的socket中取得IP

java中從Socket中獲取IP地址通過Socket的getInetAddress()方法即可獲得Socket中的Ip地址。其中Socket中還可以通過getLocalAddress()獲取Socket綁定的本地地址。

② mfc socket客戶端怎麼知道伺服器的ip

因為Client是通信的主動方,即發起通信的一端,因此通信之前Client必須已知Server的IP和埠號才行。
通常的C/S模式通信的做法是先為Server申請公網IP,然後在client編程時指明欲連接的Server的IP和埠號,這樣的client程序一旦安裝後就內置了Server的IP;
另一種做法是在client的執行界面預留輸入框,執行時允許用戶輸入Server的IP,然後實現通信,這兩種方式都必須事先知道server的IP信息才行。

③ 想要用socket連接一個另一個網路中的內網地址如何知道他的ip

通常內網地址DMZ區,通常無法直接訪問。
需要中間有伺服器中轉。
如果能控制另一個網路路由器,可以做埠指向,這個有點麻煩。
就是你的IP是192.168.1.10,網關是192.168.1.1,另一個網路IP是192.168.2.10,網關是192.168.2.1
192.168.1.1和192.168.2.1可能是一個L2的不同網口,也可能是一個伺服器的兩個網卡。
情況不一樣,做法不一樣。

④ 怎麼獲取socket ip 地址

你是想知道代碼還是想了解原理,一般的C/S模型都由客戶端發出連接請求(客戶端在代碼中都是存有伺服器端的具體ip地址和埠信息(也就是伺服器端的INET協議族地址結構)的),當客戶端發送連接請求後,伺服器端通過accpet函數接收連接請求,accpet函數示例:accept(ServerSocket,(structsockaddr*)&from,&len)(from是一個INET協議族地址結構變數,(structsockaddr*)的作用是把INET協議族地址結構強制轉換為通用地址結構),accpet函數在接收連接的同時會把客戶端的具體ip和埠信息賦值給from,所以說客戶端socket連接的ip(非綁定的話客戶機隨機綁定ip和埠)是包含在連接報文數據里,伺服器端只有接收到客戶端發送的連接信息後,才會獲得客戶端的ip和埠信息,獲得具體ip的方式是通過函數,這個函數可以提取出IPv4地址結構中的點分十進制地址,函數用法:inet_ntoa(from.sin_addr)。

⑤ c#socket 伺服器中怎麼獲得外網ip

1)如果socket採用的是TCP協議,則在執行Connect方法時指定外網的IP和埠//假設外網的IP地址為218.93.121.156socket.Connect(IPAddress.Parse("218.93.121.156"),10001);2)如果socket採用的UDP協議,則在執行SendTo方法時指定外網地址和

⑥ 如何通過Socket獲得所有客戶端連接的IP地址

如果伺服器端要獲取客戶端ip的話:
//假設socket(),bind(),listen()函數已經完成addrlen
=
sizeof(client);connetfd
=
accept(listenfd,(struct
sockaddr
*)&client,&addrlen);那麼client.sin_port
就是客戶端的埠
client.sin_addr.s_addr
就是客戶端的ip。
這兩個都是以網路位元組序來保存的,如果要printf的話需要先轉化為主機位元組序

⑦ C#用Socket怎麼得到請求客戶端的IP地址


伺服器端
利用一個SOCKET開始偵聽----也就是調用他的ACCEPT()之後,ACCEPT接收到請求會返回一個SOCKET,創建一個SOCKET引用就收這個SOCKET,再看他的REMOTEENDPOINT屬性就是了

⑧ vb.net socket中的當客戶端連接Server的時候怎麼取得客戶端的IP地址

1.綁定的ip是伺服器的ip地址,伺服器是固定的,客戶端連接的是一個已知的伺服器端。
2.客戶端的話,連接到伺服器時,伺服器accept後,就可以獲得客戶端的連接信息,包括ip地址和埠。
我是學c的,在c語言中,socket->bind->listen->accept->....,在accept函數中有選項,如下caddr結構體中就存有accept後客戶端的ip地址
連接埠和傳輸方式等信息,clientsock[1]則為accept新的描述符,如你程序中soc2一樣

clientsock[1]
=
accept(sfd,(struct
sockaddr*)&caddr,&len);
vb中應該也有類時的函數,你網上好好找一下,或者看看相關書籍.

⑨ 如何獲得Socket連接客戶端的IP地址

如果伺服器端要獲取客戶端ip的話:


//假設socket(),bind(),listen()函數已經完成
addrlen=sizeof(client);
connetfd=accept(listenfd,(structsockaddr*)&client,&addrlen);

那麼client.sin_port 就是客戶端的埠

client.sin_addr.s_addr 就是客戶端的ip。

這兩個都是以網路位元組序來保存的,如果要printf的話需要先轉化為主機位元組序

⑩ Socket如何獲得接入客戶端的真正IP和埠

import socket

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind(('127.0.0.1', 8888))
s.listen(1)
conn, addr = s.accept()
print conn, addr

#<socket._socketobject object at 0x0312CAE8> ('127.0.0.1', 2134)
#addr 第一個為客戶端ip,第二個為埠,上面的程序是tcp服務,udp類似。

閱讀全文

與socket怎麼知道伺服器的ip相關的資料

熱點內容
rtsp工程如何編譯 瀏覽:699
怎麼蘋果app里沒有微信 瀏覽:796
php實例練習 瀏覽:411
exe命令行參數 瀏覽:674
番茄todo是一款什麼樣的app 瀏覽:859
安卓系統如何設置5g網路 瀏覽:408
壓縮機機內保護 瀏覽:520
java線程是否結束 瀏覽:266
郵箱提示證書加密不合法 瀏覽:327
安卓什麼軟體像小容 瀏覽:559
戰爭雷霆為什麼伺服器連接失敗 瀏覽:130
php字元串中的字元位置 瀏覽:88
java圖片爬蟲 瀏覽:289
伺服器維護中怎麼玩不了 瀏覽:560
新到的伺服器如何調試 瀏覽:434
itext顯示pdf 瀏覽:255
自己創文件夾表格怎麼弄底紋 瀏覽:259
如何把阿里雲作為中轉伺服器 瀏覽:322
多層壓縮板和木工板的差別 瀏覽:70
如何標記電腦文件夾 瀏覽:790