Linux网络编程(三)——TCP
宗旨:技术的学习是有限的,分享的精神是无限的。
1、TCP段格式
和UDP协议一样也有源端口号和目的端口号,通讯的双方由IP地址和端口号标识。32位序号、32位确认序号、窗口大小。4位首部长度和IP协议头类似,表示TCP协议头的长度,以4字节为单位,因此TCP协议头最长可以是4x15=60字节,如果没有选项字段, TCP...
分类:
系统相关 时间:
2016-04-05 10:53:36
阅读次数:
279
Linux下的网络接口信息在shell下可以很方便地使用ifconfig查看。同样,使用C/C++也可以很方便地获取接口信息。 netdevice是一个低级别的访问Linux网络设备的方法。此方法通过ioctl来获取网络接口的相关信息。 这里需要借助<net/if.h>头文件中定义的ifreq结构体 ...
分类:
系统相关 时间:
2016-04-02 20:17:36
阅读次数:
392
hostname#vi/etc/sysconfig/network/etc/hosts静止pingvi/etc/sysctl.confnet.ipv4.icmp_echo_ignore_all=0#cat/etc/resolv.conf#route-nrouteadddefultgw网关#digwww.baidu.com#nslookup#traceroutewww.baidu.comtelnet--------80nmptcpdump#tcpdump-nicmp-ieth019:13:33.4701..
分类:
系统相关 时间:
2016-04-01 19:00:24
阅读次数:
238
基于原始套接字编程
在开发面向连接的TCP和面向无连接的UDP程序时,我们所关心的核心问题在于数据收发层面,数据的传输特性由TCP或UDP来保证: 也就是说,对于TCP或UDP的程序开发,焦点在Data字段,我们没法直接对TCP或UDP头部字段进行赤裸裸的修改,当然还有IP头。换句话说,我们对它们头部操作的空间非常受限,只能使用它们已经开放给我们的诸如源、目的IP,...
分类:
系统相关 时间:
2016-04-01 18:27:08
阅读次数:
212
1.套接字的基本结构
struct sockaddr
这个结构用来存储套接字地址。
数据定义:
struct sockaddr {
unsigned short sa_family; /* address族, AF_xxx */
char sa_data[14]; /* 14 bytes的协议地址 */
};
...
分类:
系统相关 时间:
2016-04-01 18:22:28
阅读次数:
241
对于linux网络编程来说,可以简单的分为标准套接字编程和原始套接字编程,标准套接字主要就是应用层数据的传输,原始套接字则是可以获得不止是应用层的其他层不同协议的数据。与标准套接字相区别的主要是要开发之自己构建协议头。对于原始套接字编程有些细节性的东西还是需要注意的。 1. 原始套接字创建 原始套接 ...
分类:
系统相关 时间:
2016-03-31 23:09:33
阅读次数:
293
首先非常感谢百度,感谢网络的搜索引擎技术,也非常感谢学习资源的贡献者和组织! 1:http://billie66.github.io/TLCL/book/zh/ 2:http://www.ha97.com/book/vbird_linux/linux_basic/index.htm 3:http:/ ...
分类:
系统相关 时间:
2016-03-30 22:17:13
阅读次数:
345
ifconfigrouteipiproute一、ifconfig命令(查看或配置Ip)1、查看网络连接#ifconfig\\显示所有活动连接,不包令禁用的设备或#ifconfig-a\\显示所有活动及非活动的连接显示指定接口的连接#ifconfigeth12、配置ip地址#ifconfigeth1192.168.0.1netmask255.255.255.或#ifconfigeth1..
分类:
系统相关 时间:
2016-03-30 18:02:35
阅读次数:
444
netstatsspingtraceroutemtr1、ping命令ping命令使用的是icmp协议,可以用来测试网络的连通信。ping[options]IP-c#-wdeadline:测试执行时长#ping-c2172.16.0.12、traceroute追踪路由获取从当前主机到达目标主机所有经过的网关常用示例:示例1traceroutewww.baidu.com示例2以数..
分类:
Web程序 时间:
2016-03-30 18:01:12
阅读次数:
164