⑴ 思科2811C路由器內網用戶不能通過外網域名訪問內網WEB伺服器
兩個DNS,走哪個都有可能啊,走外網的你就訪問不了,走內網的你就能訪問,很正常啊,你這方法應該解決不了問題吧,你試試把電腦上的外網DNS刪了看看是不是能正常訪問內網WEB服務,如果是的話說明我的推測是正確的。要解決問題的話你應該在WEB伺服器上邊加一個DNS服務,然後設置正向和反向解析來為內網機器進行DNSW。我也是小菜鳥一個,這個事大神給的回答。http://..com/question/429206224.html
⑵ 如何只用c語言,通過域名得到IP地址
#include<stdio.h>//printf
#include<string.h>//memset
#include<stdlib.h>//forexit(0);
#include<sys/socket.h>
#include<errno.h>//Forerrno-theerrornumber
#include<netdb.h>//hostent
#include<arpa/inet.h>
inthostname_to_ip(char*,char*);
intmain(intargc,char*argv[])
{
if(argc<2)
{
printf("");
exit(1);
}
char*hostname=argv[1];
charip[100];
hostname_to_ip(hostname,ip);
printf("%sresolvedto%s",hostname,ip);
printf(" ");
}
/*
Getipfromdomainname
*/
inthostname_to_ip(char*hostname,char*ip)
{
structhostent*he;
structin_addr**addr_list;
inti;
if((he=gethostbyname(hostname))==NULL)
{
//getthehostinfo
herror("gethostbyname");
return1;
}
addr_list=(structin_addr**)he->h_addr_list;
for(i=0;addr_list[i]!=NULL;i++)
{
//Returnthefirstone;
strcpy(ip,inet_ntoa(*addr_list[i]));
return0;
}
return1;
}
⑶ c語言訪問伺服器
lz要先知道什麼是socket,它是TCP/IP協議的API。再上層是http udp之類傳輸報文協議。而什麼是伺服器,如你所說tomcat伺服器,他是一個http(s)伺服器。處理由客戶發送的HTTP報文。並返回報文給客戶。
簡單來說,http就是socket的一個封裝。所以c語言使用socket理所當然能訪問任何伺服器。至於使用什麼格式,你可以看看HTTP報文格式。
⑷ 怎麼通過域名訪問伺服器上的網站
域名(Domain Name),是由一串用點分隔的名字組成的Internet上某一台計算機或計算機組的名稱,用於在數據傳輸時標識計算機的電子方位(有時也指地理位置,地理上的域名,指代有行政自主權的一個地方區域)。域名是一個IP地址上有「面具」 。一個域名的目的是便於記憶和溝通的一組伺服器的地址(網站,電子郵件,FTP等)。域名作為力所能及難忘的互聯網參與者的名稱,世界上第一個注冊的域名是在1985年1月注冊的。