linux下检测本机是否可以上网
2016-02-18 17:29
746 查看
首先,本机PC需是直连接网络,没有设置代理,代码如下:
#include<stdio.h> #include<netdb.h> #include<string.h> #define PORT 80 int main() { struct hostent* host = NULL; host = gethostbyname("www.baidu.com"); if(NULL == host) { printf("don't connect internet..."); return -1; } ///定义sockfd int sock_cli = -1; sock_cli = socket(AF_INET,SOCK_STREAM, 0); ///定义sockaddr_in struct sockaddr_in servaddr; memset(&servaddr, 0, sizeof(servaddr)); servaddr.sin_family = AF_INET; servaddr.sin_port = htons(PORT); ///服务器端口 //servaddr.sin_addr.s_addr = inet_addr(); ///服务器ip servaddr.sin_addr = *((struct in_addr *)host->h_addr); ///连接服务器,成功返回0,错误返回-1 if (connect(sock_cli, (struct sockaddr *)&servaddr, sizeof(servaddr)) < 0) { perror("connect"); return -1; } else { printf("connect internet..."); } return 0; }
相关文章推荐
- Linux磁盘操作命令
- CentOS 6.5下安装BeEF
- linux--给初学者的建议
- Linux下Mysql主从同步错误:Slave_SQL_Running: No的解决方案
- centos6.6下安装MySQLdb时出现“error command 'gcc' failed with exit status 1”
- CentOS6.5下安装字体
- linux指令大全
- C/C++ 获取文件夹下所有文件名 windows和linux通用
- 【Linux.Python】Python进程后台启动
- ubuntu touch ubuntu手机版
- centos安装SWFtools服务(pdf2swf)
- linux基本命令
- Linux glibc幽灵漏洞测试与修复方法
- linux命令ps aux|grep java和ps -ef|grep java 有什么区别?
- linux中select()函数分析
- 深入理解Linux守护进程
- Linux系统监测
- linux基础信息网站
- Linux中sar命令参数详解
- Linux 下释放内存,swap交换区缓存