c獲取伺服器ip
㈠ 如何獲得區域網內伺服器主機的IP地址!
arp -a 加對方IP是查對方的MAC地址
nbtstat -a 加對方IP查對方的主機名
用IP地址反查主機名
ping ip 就可以得到主機名,nbtstat -A xxx.xxx.xxx.xxx可得到主機名。
NBTSTAT命令:用於查看當前基於NETBIOS的TCP/IP連接狀態,通過該工具你可以獲得遠程或本地機器的組名和機器名。雖然用戶使用ipconfig/winipcfg工具可以准確地得到主機的網卡地址,但對於一個已建成的比較大型的區域網,要去每台機器上進行這樣的操作就顯得過於費事了。網管人員通過在自己上網的機器上使用DOS命令nbtstat,可以獲取另一台上網主機的網卡地址。我們還是先來看看它的語法格式吧:
NBTSTAT [ [-a RemoteName] [-A IP address] [-c] [-n] [-r] [-R] [-RR] [-s] [-S] [interval] ]
參數說明:
-a Remotename—說明使用遠程計算機的名稱列出其名稱表,此參數可以通過遠程計算機的NetBios名來查看他的當前狀態。
-A IP address—說明使用遠程計算機的 IP 地址並列出名稱表,這個和-a不同的是就是這個只能使用IP,其實-a就包括了-A的功能了。
-c—列出遠程計算機的NetBIOS 名稱的緩存和每個名稱的 IP 地址這個參數就是用來列出在你的NetBIOS里緩存的你連接過的計算機的IP。
-n—列出本地機的 NetBIOS 名稱,此參數與上面所介紹的一個工具軟體「netstat」中加「 -a」參數功能類似,只是這個是檢查本地的,如果把netstat -a後面的IP換為自己的就和nbtstat -n的效果是一樣的了。
-r—列出 Windows 網路名稱解析的名稱解析統計。在配置使用 WINS 的 Windows 2000 計算機上,此選項返回要通過廣播或 WINS 來解析和注冊的名稱數。
-R—清除 NetBIOS 名稱緩存中的所有名稱後,重新裝入 Lmhosts 文件,這個參數就是清除nbtstat -c所能看見的緩存里的IP。
-S—在客戶端和伺服器會話表中只顯示遠程計算機的IP地址。
-s—顯示客戶端和伺服器會話,並將遠程計算機 IP 地址轉換成NETBIOS名稱。此參數和-S差不多,只是這個會把對方的NetBIOS名給解析出來。
-RR—釋放在 WINS 伺服器上注冊的 NetBIOS 名稱,然後刷新它們的注冊。
interval—每隔interval 秒重新顯示所選的統計,直到按「CTRL+C」鍵停止重新顯示統計。如果省略該參數,nbtstat 將列印一次當前的配置信息。此參數和netstat的一樣,nbtstat中的「interval」參數是配合-s和-S一起使用的。
好了,關於nbtstat的應用就不多講了,相信看了它的一些參數功能也就明白了它的功能了,只是要特別注意這個工具中的一些參數是區分大、小寫的,使用時要特別留心!另外在系統中還人置有許多這方面的工具,如ARP命令是用於顯示並修改Internet到乙太網的地址轉換表;nslookup命令的功能是查詢一台機器的IP地址和其對應的域名,它通常需要一台域名伺服器來提供域名服務,如果用戶已經設置好域名伺服器,就可以用這個命令查看不同主機的IP地址對應的域名……在此就不多講了,另外還要說明的一點就是不同的系統中的相應命令參數設置可能有不同之處,但大體功能是一致的,希望大家在應用時稍加註意,本文所列的這些工具軟體參數用法全是針對Win9xWinMe,在NT和UNIX、LINUX系統中有一些不同之處
在區域網內,我們常使用一些工具來查IP查主機名,利用ipconfig或者ping可以查到IP地址,也是我們常使用的工具。而要查網內的主機,可以用網上鄰居,其實我們也有一個很方便的方法,通過指定IP地址就可以查詢到主機名,在windows的命令行方式下,輸入命令:nbtstat -A 192.168.1.111(對方的IP地址)就會把主機名,此主機所在的群組名也顯示出來
nbtstat
該命令使用TCP/IP上的NetBIOS顯示協議統計和當前TCP/IP連接,使用這個命令你可以得到遠程主機的NETBIOS信息,比如用戶名、所屬的工作組、網卡的MAC地址等。在此我們就有必要了解幾個基本的參數。
-a使用這個參數,只要你知道了遠程主機的機器名稱,就可以得到它的NETBIOS信息(下同)。
-A這個參數也可以得到遠程主機的NETBIOS信息,但需要你知道它的IP。
-n列出本地機器的NETBIOS信息。
㈡ 請問 , 用c語言怎樣獲取ip地址啊 謝謝了
看你要獲得那裡的ip地址
如果是本及機的話,就使用windows的API啊
#include "winsock.h"
WORD wVersionRequested;
WSADATA wsaData;
char name[255];
char* ip;
PHOSTENT hostinfo;
wVersionRequested = MAKEWORD( 2, 0 );
if ( WSAStartup( wVersionRequested, &wsaData ) == 0 )
{
if( gethostname ( name, sizeof(name)) == 0)
{
if((hostinfo = gethostbyname(name)) != NULL)
{
ip = inet_ntoa (*(struct in_addr *)*hostinfo->h_addr_list);
}
}
// ip is ready
WSACleanup( );
}
㈢ 編程:C語言編程取得本機ip地址
取本地地址 可以從「開始」-「程序」-「附件」-「命令提示符」裡面輸入英文「ipconfig/all」就可得到IP地址了,LINUX我也不太懂了。
㈣ 怎麼用c或者c++代碼獲取默認DNS伺服器的ip
#include<windows.h>
#include<string>
#include<cstdio>
using namespace std;
int main()
{
system("ipconfig /all");//使用運行CMD.exe,並輸入ipconfig /all,可得出本機所有物理地址信息(IP信息)
getchar();//獲取記錄信息
return 0;
}
㈤ 計算機網路,求C的IP地址
C伺服器的IP地址范圍為:130.130.192.1-130.130.255.254。因為18位的掩碼中主機的數量為2的14次方減2,即16382個。
㈥ 怎麼用 C語言來獲取到客戶端的IP-C/C++
如果是tcp連接的話,伺服器端可以通過accept函數獲得已連接的客戶端的地址,這個地址裡面可以解析出IP地址和埠
㈦ 在c語言中客戶端將自己的ip地址傳給伺服器,伺服器怎樣接收輸出
將ip地址轉成4個位元組的char類型,再send,然後伺服器解析出ip地址;
不過你要這個干嗎?直接調用api就能獲取客戶端ip地址
㈧ C語言能獲取當前IP嗎
#include "stdio.h"
#include "conio.h"
main()
{
int i,j;
char ip[20];
char temp[100];
char ch='\0';
FILE *fp;
system("ipconfig >d:\\myip.txt");
if ((fp=fopen("d:\\myip.txt","r"))==NULL)
{
printf("the file can not open:\nPress any key to exit:");
getch();
exit(1);
}
for (i=0;i<7;i++)
{fgets(temp,80,fp); /*跳過一些行*/
/*printf("%s\n",temp); */}
fgets(temp,80,fp);
i=0;j=0;
while (temp[i++]!=':')
;
while (temp[i]!='\n')
ip[j++]=temp[i++];
ip[j]=0;
printf("IP=%s\n",ip);
fclose(fp);
system("del d:\\myip.txt");
getch();
}
㈨ 請問 c語言怎樣獲取計算機ip地址啊
struct in_addr addr;
hostent *pHost = ::gethostbyname("localhost");//在此寫入你自己電腦主機名字
switch (pHost->h_addrtype) {
case AF_INET:
printf("internet網路地址類型(AF_INET)\n");
break;
case AF_INET6:
printf("internet網路地址類型(AF_INET)\n");
break;
case AF_NETBIOS:
printf("netbios網路地址類型(AF_NETBIOS)\n");
break;
default:
printf("其它地址類型 %d\n", pHost->h_addrtype);
break;
}
printf("\t地址長度: %d(位元組)\n", pHost->h_length);
addr.s_addr = *(u_long *) pHost->h_addr_list[0];
printf("\t第一個IP地址為: %s\n", inet_ntoa(addr));