新手入门
- 积分
- 12
- 金钱
- 12
- 注册时间
- 2018-12-5
- 在线时间
- 45 小时
|
8金钱
为什么我用两种方式获取的IP都不对
netconn_gethostbyname((char *)hostname,&ser_t);
dns_gethostbyname((char *)(hostname),&ser_t,my_found,NULL);
但百度搜索一下别人的例程很简单
例如域名 www.baidu.com
#define LWIP_DNS 1 /* 使能 DNS 服务器的功能 ,2018年1月8日21:16:20,suozhang */
#define LWIP_RAND() ((u32_t)rand()) /* 使用 DNS 服务器的功能,需要添加随机数函数 ,2018年1月8日21:16:20,suozhang */
ip_addr_t dnsserver;/* Create tcp_ip stack thread */tcpip_init( NULL, NULL ); /* 创建,运行 LWIP 协议栈,2018年1月9日10:56:34 */IP4_ADDR(&dnsserver,114,114,114,114);/* suozhang,add,2018年1月11日18:03:10 */dns_setserver(0, &dnsserver);IP4_ADDR(&dnsserver,223,5,5,5); /* suozhang,add,2018年1月11日18:03:10 */dns_setserver(1, &dnsserver);dns_init(); /* 初始化 DNS 服务,2018年1月9日10:56:34 */
void my_found(const char *name, const ip_addr_t *ipaddr, void *arg){ uint8_t ip[4]; ip[0] = (ipaddr->addr)>>24; ip[1] = (ipaddr->addr)>>16; ip[2] = (ipaddr->addr)>>8; ip[3] = (ipaddr->addr); printf("%s ip is :%d.%d.%d.%d.\r\n",name,ip[3], ip[2], ip[1], ip[0]); }
err = dns_gethostbyname((char*)(hostname), &(serverIp),my_found,NULL);
这样获取的IP就是:111.13.100.91
|
|