一段打印客户端的ip和端口,并返回一段当前时间的代码,客户端通过telnet就可以连接了
#include <stdio.h> #include <stdlib.h> #include <netinet/in.h> #include <unistd.h> #include <fcntl.h> #include <sys/socket.h> #include <strings.h> #include <netinet/in.h> #include <time.h> int main(int argc, char **argv) { int listenfd, connfd; socklen_t len; struct sockaddr_in server,cli; char buffer[1024]; time_t ticks; listenfd = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); bzero(&server, sizeof(server)); server.sin_family = AF_INET; server.sin_addr.s_addr = htonl(INADDR_ANY); server.sin_port = htons(9527); bind(listenfd, (struct sockaddr *)&server,sizeof(server)); listen(listenfd, 10); while(1) { len = sizeof(cli); connfd = accept(listenfd, (struct sockaddr *)&cli, &len); inet_ntop(AF_INET, &cli.sin_addr, buffer, sizeof(buffer)); uint16_t u = ntohs(cli.sin_port); printf("connection from %s, port %d\n", buffer,u); ticks = time(NULL); char *t = ctime(&ticks); snprintf(buffer,sizeof(buffer), "%35s\r\n", t); write(connfd, buffer,strlen(buffer)); close(connfd); } printf("ok~\n"); return 0; }
相关推荐
《Unix网络编程卷1:套接字联网API(第3版)》是网络编程领域的一本经典著作,由Steven McQuain和W. Richard Stevens共同撰写。这本书详细介绍了Unix系统中的网络编程,尤其是套接字(Sockets)API的使用,是IT专业...
《UNIX网络编程 卷1:套接字联网API源代码》是网络编程领域的一本经典著作,主要关注于UNIX系统中的网络通信,特别是基于套接字的编程接口。这本书深入探讨了如何使用套接字API来实现跨网络的通信,为开发者提供了...
2. **TCP/IP协议栈**:讲解了TCP和UDP这两种主要的传输层协议,以及它们在套接字编程中的应用。源码中会包含TCP连接的建立与关闭、数据传输,以及UDP的无连接通信。 3. **多路复用I/O**:如select()、poll()和epoll...
卷一:《Unix网络编程卷一:套接字联网API》 这本书主要围绕Unix系统的套接字接口进行讲解,套接字(Sockets)是Unix系统中实现进程间通信(IPC)的一种重要机制,也是网络通信的基础。书中详细阐述了以下核心知识点...
2. **套接字API**:详细阐述了套接字编程接口,包括socket()函数创建套接字,bind()函数绑定本地地址,listen()函数准备接收连接,accept()函数接受连接请求,connect()函数发起连接,send()和recv()函数进行数据...
《UNIX网络编程 第1卷(第3版):套接字联网API》是网络编程领域的一本经典之作,由W. Richard Stevens撰写。这本书详细介绍了如何在UNIX系统中使用套接字API进行网络通信,是学习和理解网络编程的基础。 本书主要...
对于TCP套接字,使用write和read函数可以实现可靠的数据流传输;而对于UDP套接字,sendto和recvfrom函数则用于向特定的远程地址发送和接收数据报。 此外,书中还涵盖了多路复用I/O(如select、poll和epoll)技术,...
《UNIX网络编程》第一卷主要涵盖了网络编程的基本概念、传输层协议TCP和UDP的细节、套接口编程的原理与应用,以及高级网络编程技术。该书是网络编程领域的经典之作,作者是著名的网络编程专家W. Richard Stevens。...
通过学习这些程序,你可以深入理解网络编程的基本原理,包括TCP连接的建立和关闭、套接字选项的设置、信号处理、套接字的非阻塞I/O和异步I/O模型等。此外,对于网络编程的进阶话题,如HTTP服务器的实现、DNS查询、多...
《UNIX网络编程 卷1:套接字联网API(第3版)》是网络编程领域的一本经典著作,尤其在UNIX/Linux系统上有着广泛的影响力。这本书深入浅出地讲解了如何使用套接字API进行网络通信,对于学习C++编程语言的开发者来说,...
3. **套接字类型与协议族**:讲解了不同的套接字类型,如SOCK_STREAM(TCP)和SOCK_DGRAM(UDP),以及不同的协议族,如AF_INET(IPv4)和AF_INET6(IPv6)。书中还介绍了如何选择合适的套接字类型和协议族以满足...
第4章 基本TCP套接字编程 第5章 TCP客户/服务器程序示例 第6章 I/O复用:select和poll函数 第7章 套接字选项 第8章 基本UDP套接字编程 第9章 基本SCTP套接字编程 第10章 SCTP客户/服务器程序例子 第11...
1. **基础套接字编程**:书中可能涵盖了TCP和UDP两种传输层协议的使用,展示了如何创建服务器和客户端,建立连接,发送和接收数据,以及关闭套接字。 2. **多线程编程**:在处理并发连接时,多线程技术常被用到。源...
1. **套接字接口**:这是Linux和UNIX系统中进行网络编程的基础,包括socket()函数创建套接字,bind()将套接字与本地地址关联,listen()设置服务器监听模式,accept()接收连接请求,connect()客户端连接服务器,以及...
最后一卷深入探讨了高级套接字编程,包括套接字选项、高级TCP编程(如TCP连接管理、流量控制、拥塞控制)、UDP编程、IP层编程(如IP选项、多播)、套接字过滤器(即SOCKS代理)、网络安全(如SSL/TLS)以及性能调优...
在Unix网络编程中,套接字分为流式套接字(SOCK_STREAM,对应TCP)和数据报套接字(SOCK_DGRAM,对应UDP)。流式套接字提供顺序的、可靠的字节流服务,而数据报套接字则不保证数据的顺序和可靠性,但具有较低的延迟...
《Unix网络编程_卷1_套接字联网API.pdf》主要探讨了套接字(Socket)编程接口,这是Unix系统中进行网络通信的核心API。书中详细阐述了套接字的创建、连接、监听、接受、发送和接收数据等基本操作,以及多路复用I/O...
《UNIX网络编程卷1:协议》则聚焦于网络通信,涉及TCP/IP协议栈、套接字编程和网络应用层协议。以下是其主要知识点: 1. **网络基础知识**:介绍TCP/IP协议族的基本概念,包括IP、ICMP、TCP、UDP等协议的作用和工作...
Richard Stevens撰写,主要涵盖了套接字编程和网络通信的基础知识。这个压缩包包含的代码是书中的示例程序,对于学习和理解UNIX系统下的网络编程非常有帮助。下面我们将详细探讨这些知识点。 1. 套接字(Socket)...
在阅读《UNIX网络编程卷1》时,你还会遇到许多关键概念,如网络层次模型(OSI七层模型和TCP/IP四层模型)、网络地址解析(ARP)、IP协议、端口机制、TCP与UDP的区别、套接字选项、多路复用(如select()、poll()、...