
网络
文章平均质量分 69
bytxl
归零。
得意之时谨记,一半命运还掌握在上帝手里;失意之时须知,一半命运还掌握在自己手里。
不怕死,不找死。
展开
-
TCP flag注释
http://blog.youkuaiyun.com/wisage/article/details/6049733三次握手Three-way Handshake 一个虚拟连接的建立是通过三次握手来实现的 1. (B) --> [SYN] --> (A) 假如服务器A和客户机B通讯. 当A要和B通信时,B首先向A发一个SYN (Synchronize) 标记的包,告诉A请求建立连转载 2012-08-29 08:31:49 · 1467 阅读 · 0 评论 -
Netfilter CONNMARK用法及分析(一)-- iptables命令行的使用
http://blog.chinaunix.net/uid-10167808-id-26000.html最近定位了内核中某模块与带宽管理联动的问题。最终发现是模块和CONNMARK target联动时出现了问题,导致带宽管理没有效果。于是本文就结合内核的代码和网上的一些文章来系统的分析一下iptables以及对应内核Netfilter(文中简称NF)框架中CONNMARK的用法和实现。转载 2012-08-29 08:38:17 · 5388 阅读 · 2 评论 -
带外数据
http://blog.youkuaiyun.com/xinjixjz/article/details/7483487 定义带 外 数据 想 像一下在银行人们排起队等待处理他们的帐单。在这个队伍中每个人最后都会移到前面由出纳员进行服务。现在想像一下一个走入银行,越过整个队伍,然后用枪抵 住出纳员。这个就可以看作为带 外 数据 。这个强盗越过整个队伍,是因为这把枪给了他凌驾于众人的权力。出纳员也会集转载 2012-09-11 10:01:09 · 827 阅读 · 0 评论 -
socket write出EPIPE错误
最近弄一个程序,用到unix socket来进行进程间通信,发现有时候客户端调用write函数时,返回值为-1,errno为EPIPE。经查说是连接已经关闭导致的。可是我的客户端明明是先连接,也没报错,然后再write的,为什么会连接关闭了? 经过测试,是服务端重启,然后客户端write,如果这一次正确,那么服务端重启,客户端write,必然出错,然后又重启服务端,客户端write必原创 2012-09-11 15:06:21 · 10947 阅读 · 0 评论 -
wireshark过滤规则
http://blog.sina.com.cn/s/blog_48a0f2740100ka71.html1.过 滤IP,如来源IP或者目标IP等于某个IP例子:ip.src eq 192.168.1.107 or ip.dst eq 192.168.1.107或者ip.addr eq 192.168.1.107 // 都能显示来源IP和目标IP2.过滤端 口转载 2012-12-01 14:16:59 · 791 阅读 · 0 评论 -
IP地址网段表示法
http://blog.sina.com.cn/s/blog_4a1d691b010004qx.html1.IP地址,共分为四类:A、B、C、D类,各类范围详见RFC参考。2.子网掩码。子网掩码的作用是用来表示IP地址中的多少位用来表示主机号,“其中值为1的比特留给网络号和子网号,为0的比特留给主机号”(TCP/IPV1),在B类网址中一边用来表示主机,因为在B类网址中用来表示主机号共有1转载 2012-12-30 09:27:56 · 19536 阅读 · 0 评论 -
解读HTTP与HTTPS的区别
什么是HTTPS: HTTPS(Secure Hypertext Transfer Protocol)安全超文本传输协议 它是一个安全通信通道,它基于HTTP开发,用于在客户计算机和服务器之间交换信息。它使用安全套接字层(SSL)进行信息交换,简单来说它是HTTP的安全版。 它是由Netscape开发并内置于其浏览器中,用于对数据进行压缩和解压操作,并返回网络上传送回的结果。HTTPS转载 2012-05-22 09:08:22 · 737 阅读 · 0 评论 -
Radius
简介RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,现在任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS协议认证机制灵活,可以采用PAP、CHAP或者Unix登录认证等多种方式。RADIUS是一种可扩展的协议,它进行的全部工作都是基于Attribute-Length-Value的向量进行的。RADIUS原创 2013-02-26 10:33:48 · 1223 阅读 · 0 评论 -
Wireshark抓包工具使用教程以及常用抓包规则
http://www.clxp.net.cn/article.asp?id=2288Wireshark是一个非常好用的抓包工具,当我们遇到一些和网络相关的问题时,可以通过这个工具进行分析,不过要说明的是,这只是一个工具,用法是非常灵活的,所以今天讲述的内容可能无法直接帮你解决问题,但是只要你有解决问题的思路,学习用这个软件就非常有用了。Wireshark官方下载地址:http://www.转载 2013-02-27 22:48:43 · 783 阅读 · 0 评论 -
Linux使用tcpdump命令抓包保存pcap文件wireshark分析
tcpdump 的抓包保存到文件的命令参数是-w xxx.cap抓eth1的包 tcpdump -i eth1 -w /tmp/xxx.cap 抓 192.168.1.123的包 tcpdump -i eth1 host 192.168.1.123 -w /tmp/xxx.cap 抓192.168.1.123的80端口的包 tcpdump -i et转载 2013-03-13 17:52:57 · 3045 阅读 · 0 评论 -
实例讲解虚拟机3种网络模式(桥接、nat、Host-only)
http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646007.html前言很多人安装虚拟机的时候,经常遇到不能上网的问题,而vmware有三种网络模式,对初学者来说也比较眼花聊乱,今天我就来基于虚拟机3种网络模式,帮大家普及下虚拟机上网的背景知识。虚拟机网络模式无论是vmware,virtual box,virtual pc转载 2013-04-06 12:36:03 · 710 阅读 · 0 评论 -
基于tcpdump实例讲解TCP/IP协议
http://www.cnblogs.com/ggjucheng/archive/2012/02/02/2335495.html前言虽然网络编程的socket大家很多都会操作,但是很多还是不熟悉socket编程中,底层TCP/IP协议的交互过程,本文会一个简单的客户端程序和服务端程序的交互过程,使用tcpdump抓包,实例讲解客户端和服务端的TCP/IP交互细节。TCP/IP协转载 2013-05-02 16:12:42 · 816 阅读 · 0 评论 -
radius
简介 RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系统由RFC2865,RFC2866定义,是目前应用最广泛的AAA协议。 RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,现在任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS原创 2013-05-28 17:55:55 · 1076 阅读 · 0 评论 -
HTTP1.1协议中文版-RFC2616
http://www.cnpaf.net/Class/HTTP/200811/23277.html说明 本文档规定了互联网社区的标准组协议,并需要讨论和建议以便更加完善。请参考 “互联网官方协议标准”(STD 1)来了解本协议的标准化状态。本协议不限流传发布。 版权声明 Copyright (C) The Internet Society (1999转载 2013-05-15 22:29:53 · 1325 阅读 · 0 评论 -
虚拟IP
http://linux.sheup.com/linux/linux663.htm这几天花了不少时间在研究这个,发现这真是相当实用而且强大,相信是所有 网管人员都不可不知道的。因此,我试图将它整理成文件,让大家叁考。 「虚拟 IP 」其实是我自创的名词。在 Linux 中,它指的是 IP-Masq, 而在 FreeBSD 中,它指的是 NAT service,在我看来二者功能很相近,因转载 2013-08-09 15:06:11 · 1202 阅读 · 0 评论 -
ZEROCONF是什么
http://blog.chinaunix.net/uid-20644632-id-2172223.html有一台CentOS 5.5的server(网段是172.21.73.0),查看它的路由表是发现一个奇怪的项目:[shengkui@APP-SERVER ~]$ routeKernel IP routing tableDestination Gateway Genmas转载 2013-08-12 10:18:06 · 5688 阅读 · 0 评论 -
socket编程实现简单DNS协议实现获取域名ip(TCP)
http://www.isayme.org/socket-tcp-dns-ping-ip.html上次在文章《socket编程实现简单DNS协议实现获取域名ip(UDP)》中提到使用udp协议发送dns数据包查询站点ip,这次带来TCP版本的查询代码。其实不管是tcp协议还是udp协议,都是构造dns报文,填写查询方式,发送数据包即可。然而,在dns协议中有个特殊的地方需要重点强调转载 2013-08-27 15:09:18 · 10354 阅读 · 1 评论 -
socket编程实现简单DNS协议实现获取域名ip(UDP)
http://www.isayme.org/socket-udp-dns-ping-ip.html在文章《无需socket或ping命令,使用gethostbyname获取域名ip地址》中提到用gethostbyname获取域名ip的方法。今天就用个socket的方法吧。原理比较简单:在浏览器输入网址即可浏览网页,但浏览器是如何知道相应网址对应的服务器的ip呢?稍微了解一点的同学都知道转载 2013-08-27 15:07:48 · 9658 阅读 · 1 评论 -
DNS协议及应用
http://jwx.zgz.cn/cl/7.41.htmDNS属于应用层的协议,DNS提供了将人类易于理解的主机名或域名转换为计算机或网络可识别的数字地址的机制,从而使得互连网的广泛应用成为可能。 一、 DNS涉及的基本概念 (1)域名及顶级域 1)域名 域名(Domain Name)通常是用户所在的主机名。域名格式是由若干部分组成,每个部分又称子转载 2013-09-02 09:41:47 · 1064 阅读 · 0 评论 -
INADDR_ANY的用法小结
http://www.west263.com/info/html/caozuoxitong/FreeBSD/20090513/132910.htmlINADDR_ANY就是指定地址为0.0.0.0的地址,这个地址事实上表示不确定地址,或“所有地址”、“任意地址”。 一般来说,在各个系统中均定义成为0值。例如MontiVista Linux中在/usr/include/netinet/in.转载 2013-10-31 16:44:11 · 732 阅读 · 0 评论 -
PF_INET AF_INET
http://blog.youkuaiyun.com/csdn_zc/article/details/7656445在写网络程序的时候,建立TCP socket: sock = socket(PF_INET, SOCK_STREAM, 0); 然后再绑定本地地址或连接远程地址时需要初始化sockaddr_in结构,其中指定address family时一般设置问AF_INET,即使用I转载 2013-05-07 11:17:01 · 826 阅读 · 0 评论 -
PPPoE过程
http://blog.sina.com.cn/s/blog_4db83b6f01000apf.htmlPPPoE的数据报文是被封装在以太网帧的数据域内的。以太网帧头包括:1. 目的MAC地址(该阶段为ffffffffffff的广播地址)2. 源MAC地址(客户端MAC地址)3. 以太网协议类型(该阶段为0x8863,表示为发现阶段)。 PPPoE数据报文的格式:转载 2013-11-05 13:53:29 · 1453 阅读 · 0 评论 -
全零网络IP地址0.0.0.0表示意义
http://liuzhigong.blog.163.com/blog/static/17827237520114207278610/RFC:0.0.0.0/8 - Addresses in this block refer to source hosts on "this"network. Address 0.0.0.0/32 may be used as a sourc转载 2013-11-06 10:20:00 · 3091 阅读 · 0 评论 -
上网异常与LSP
LSP即分层服务提供商,是TCP/IP等协议的接口.。Winsock 作为应用程序的 Windows 的网络套接字工具,可以由称为“分层服务提供商”的机制进行扩展。Winsock LSP 可用于非常广泛的实用用途,包括 Internet 家长控制 (parental control) 和 Web 内容筛选。在以前版本的 Windows XP 中,删除不正确的(也称为“buggy”)LSP 可能会导原创 2013-11-12 16:31:22 · 1626 阅读 · 0 评论 -
HTTP协议之multipart/form-data请求分析
http://blog.youkuaiyun.com/five3/article/details/7181521首先来了解什么是multipart/form-data请求:根据http/1.1 rfc 2616的协议规定,我们的请求方式只有OPTIONS、GET、HEAD、POST、PUT、DELETE、TRACE等,那为为何我们还会有multipart/form-data请求之说呢?这就要从转载 2013-08-02 17:41:57 · 1772 阅读 · 0 评论 -
wireshark工具使用心得
抓http包,但是protocal全部为tcp,并且Info也没有解析为http打开"Edit/Preferences“,选择Protocals,选择http,在"tcp ports"中加入http端口抓包数据不完整清除浏览器缓存,再抓原创 2013-12-13 10:15:59 · 2139 阅读 · 0 评论 -
Linux下的TCP延迟确认机制与TCP_NODELAY TCP_CORK
http://bbs.chinaunix.net/thread-3767363-1-1.htmlhttp://pananq.com/index.php/2011/08/29/%E5%86%8D%E6%8E%A2linux%E4%B8%8B%E7%9A%84tcp%E5%BB%B6%E8%BF%9F%E7%A1%AE%E8%AE%A4%E6%9C%BA%E5%88%B6/在网络拥塞控制领域,转载 2013-12-30 11:21:10 · 9102 阅读 · 0 评论 -
单播、多播和广播经典详解
1 什么是单播、多播和广播 “单播”(Unicast)、“多播”(Multicast)和“广播”(Broadcast)这三个术语都是用来描述网络节点之间通讯方式的术语。那么这些术语究竟是什么意思?区别何在?且听下文分解。——★单播★—— 网络节点之间的通信就好像是人们之间的对话一样。如果一个人对另外一个人说话,那么用网络技术的术语来描述就是“单播”,此时信息的接收转载 2014-01-09 10:02:00 · 23665 阅读 · 3 评论 -
关于C语言协程与网络编程的分析
http://soft.chinabyte.com/database/468/12523968.shtml协程 协程,即协作式程序,其思想是,一系列互相依赖的协程间依次使用CPU,每次只有一个协程工作,而其他协程处于休眠状态。协程可以在运行期间的某个点上暂停执行,并在恢复运行时从暂停的点上继续执行。 协程已经被证明是一种非常有用的程序组件,不仅被python、lua、ruby等脚本语言广转载 2013-12-27 14:20:19 · 1046 阅读 · 0 评论 -
python socket ssl编程
http://blog.youkuaiyun.com/hongqun/article/details/6833412首先,使用如下命令生成证书和key:openssl req -new -x509 -days 365 -nodes -out cert.pem -keyout key.pem接下来实现服务器:import socket, ssl, time# python 3.3 b原创 2014-03-05 10:09:55 · 10871 阅读 · 1 评论 -
Python socket编程简介
http://blog.sina.com.cn/s/blog_523491650100hikg.html一个简单的python socket编程一、套接字套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象。它们允许程序接受并进行连接,如发送和接受数据。为了建立通信通道,网络通信的每个端点拥有一个转载 2014-03-04 17:00:18 · 862 阅读 · 0 评论 -
select函数使用注意
今天调了一个双机(主备机)的通信与切换bug,发现一个问题:原创 2014-04-13 15:23:57 · 777 阅读 · 0 评论 -
TCP长连接与短连接的区别
http://blog.youkuaiyun.com/weiwangchao_/article/details/72256131. TCP连接当网络通信时采用TCP协议时,在真正的读写操作之前,server与client之间必须建立一个连接,当读写操作完成后,双方不再需要这个连接时它们可以释放这个连接,连接的建立是需要三次握手的,而释放则需要4次握手,所以说每个连接的建立都是需要资源消转载 2014-04-02 09:11:05 · 756 阅读 · 0 评论 -
【Linux网络编程笔记】TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—实践篇
http://blog.youkuaiyun.com/slvher/article/details/8941945上篇笔记主要介绍了与TIME_WAIT相关的基础知识,本文则从实践出发,说明如何解决文章标题提出的问题。1. 查看系统网络配置和当前TCP状态 在定位并处理应用程序出现的网络问题时,了解系统默认网络配置是非常必要的。以x86_64平台Linux kernelversion转载 2014-04-03 08:55:42 · 2096 阅读 · 0 评论 -
TCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇
http://www.2cto.com/net/201305/212141.htmlTCP短连接产生大量TIME_WAIT导致无法对外建立新TCP连接的原因及解决方法—基础知识篇 最近遇到一个线上报警:服务器出现大量TIME_WAIT导致其无法与下游模块建立新HTTP连接,在解决过程中,通过查阅经典教材和技术文章,加深了对TCP网络问题的理解。作为笔记,记录于此。 备转载 2014-04-02 09:28:28 · 1638 阅读 · 0 评论 -
socket异步编程--libevent的使用
http://www.cnblogs.com/cnspace/archive/2011/07/19/2110891.html这篇文章介绍下libevent在socket异步编程中的应用。在一些对性能要求较高的网络应用程序中,为了防止程序阻塞在socket I/O操作上造成程序性能的下降,需要使用异步编程,即程序准备好读写的函数(或接口)并向系统注册,然后在需要的时候只向系统提交读写的请求之后就转载 2014-04-03 09:03:17 · 648 阅读 · 0 评论 -
使用 libevent 和 libev 提高网络应用性能——管理多个 UNIX 网络连接
http://www.ibm.com/developerworks/cn/aix/library/au-libev/构建现代的服务器应用程序需要以某种方法同时接收数百、数千甚至数万个事件,无论它们是内部请求还是网络连接,都要有效地处理它们的操作。有许多解决方案,但是 libevent 库和 libev 库能够大大提高性能和事件处理能力。在本文中,我们要讨论在 UNIX® 应用程序中使用和部署这转载 2014-04-03 08:59:31 · 1097 阅读 · 0 评论 -
IP与IPX比较
IP与IPX比较 从网络管理员角度上来看,IPX实际上是自配置的,而IP需要人来进行配置。但是TCP/IP协议在性能上的优势把这种人工配置的麻烦给抵了。在IP中的一些组件(协议)在IPX中也有相应的组件(或协议)与之相对应。如果需要对错误进行定位,那就必须知道它们的工作原理。 我们首先来看一下寻址吧,IP使用四位地址定位设备,我们熟悉的格式就是这种点分十进制的格式转载 2014-06-03 09:02:14 · 11932 阅读 · 0 评论 -
电路交换,报文交换与分组交换
(1)电路交换:由于电路交换在通信之前要在通信双方之间建立一条被双方独占的物理通路(由通信双方之间的交换设备和链路逐段连接而成),因而有以下优缺点。 优点: ①由于通信线路为通信双方用户专用,数据直达,所以传输数据的时延非常小。 ②通信双方之间的物理通路一旦建立,双方可以随时通信,实时性强。 ③双方通信时按发送顺序传送数据,不存在失序问题。 ④电路交换既适用于传输模拟信号,也适用转载 2014-09-20 15:43:06 · 6357 阅读 · 0 评论 -
TCP: SYN ACK FIN RST PSH URG 详解
参考:http://ilexes.blog.51cto.com/705330/154368/SYN表示建立连接,FIN表示关闭连接,ACK表示响应,PSH表示有 DATA数据传输,RST表示连接重置。其中,ACK是可能与SYN,FIN等同时使用的,比如SYN和ACK可能同时为1,它表示的就是建立连接之后的响应,如果只是单个的一个SYN,它表示的只原创 2012-12-19 14:15:30 · 1619 阅读 · 0 评论