自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

不会游泳的鱼<。)#)))≦ 的专栏

工作笔记备忘与分享,难免有错误之处,欢迎批评指正,技术交流

  • 博客(39)
  • 资源 (10)
  • 收藏
  • 关注

原创 linux 2.6内核较2.4内核中网络的改进分析

提供更好的安全性、电话支持和隐私保护。从隧道和更好的文件安全性到加密和隐私保护,新的 Linux 内核中引入了对网络很多方面的支持与改进。本文的内容包括,这些改进会如何影响用户,并且它们使 Linux 更为安全,更适用于企业。相对于 2.4 版本,新的 Linux 2.6 内核具有很多改进。内核网络选项是技术进步的一个方面。尽管与网络选项相关的大部分文件都有所改善,但本文只是关注影

2014-01-03 13:48:45 1541

原创 linux 网络子系统

一、概述网络子系统概述 Linux 内核中,与网络相关的代码是一个相对独立的子系统,称为网络子系统。 网络子系统是一个层次化的结构,可分为以下几个层次: 1、 Socket 层 Linux 在发展过程中,采用 BSD socket APIs 作为自己的网络相关的 API 接口。同时, Linux 的目标又要能支持各种不同的协议族,而且这些协议族都可以使用 BSD socket APIs

2014-01-02 15:27:13 3791 1

原创 设置vim打开文件光标指在上次退出位置

本人最近在使用vim编辑文件的过程中发现,打开文件光标总是停留在文件开头,特别麻烦,尤其是当文件比较大的时候。于是想修改vim配置文件,让vim能记住上一次光标退出位置。最终问题终于解决了,所以分享出来给大家,希望能帮助到你。我的系统是ubuntu系统,在文件/etc/vim/vimrc中增加以下内容:au BufReadPost * if line("'\"") > 0|if l

2013-12-24 09:42:19 12674 2

原创 linux系统替换新内核(编译安装替换与打包替换)

 一、简介内核,是一个操作系统的核心。它负责管理系统的进程、内存、设备驱动程序、文件和网络系统,决定着系统的性能和稳定性。Linux作为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订了旧内核的bug,并增加了许多新的特性。如果用户想要使用这些新特性,或想根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译内核。本文将以kernel 3.12.5版本为实验,...

2013-12-16 19:19:01 28946 6

原创 TCP三次握手建立连接与四次握手终止连接及sep和ack号的正确理解

一、简介TCP连接是面向连接的,所谓的面向连接就是,当计算机双向通信时必需先建立连接,然后才能进行数据的传输,最后还要拆除连接。而同在一个网络层的UDP传输,是面向非连接的传输,也不是可靠的。TCP建立连接需要三次握手的过程,而拆除连接需要四次握手的过程。二、TCP连接的建立与终止1、TCP连接的建立(三次握手):•在TCP/IP协议中,TCP协议提供可靠的连接服务,采

2013-12-14 22:21:42 7765 1

原创 redhat yum源配置方法

本文为整合http://guotiegang55.blog.51cto.com/929937/1168745与http://blog.sina.com.cn/s/blog_73b89cd301013r8l.html两文章内容,本人亲试成功,大家可以试试!并特此感谢以上两位博主的文章。  一,配置本地yum1,挂载光盘mount /dev/cdrom/mnt/medi

2013-12-14 15:42:23 1843

原创 IP/UDP/TCP/ICMP数据报协议的校验和的区别和计算

IP/UDP/TCP/ICMP数据报协议的校验和的区别和计算1、现针对各种协议数据包校验的区别总结如下:(1)IP校验和:IP数据报的校验和只检验IP数据报的首部。(2)UDP校验和:UDP数据报计算校验和的方法和IP数据报校验和的方法相似,但是UDP的校验和是将首部和数据部分一起都校验。并且在计算UDP校验和之前需要封装一个伪首部,伪首部结构如下(具体结构定义

2013-12-13 15:43:39 13161

原创 rust中slice panicked at 'byte index 5 is not a char boundary' 问题解决办法

今天在工作中遇到一个问题,string调用truncate()接口panic了,报错信息大致如下:thread '0' panicked at 'assertion failed: self.is_char_boundary(new_len)', liballoc/string.rs:1121:13我的代码如下:示例1:fn main() { let mut s = Stri...

2019-04-19 16:03:30 1463

转载 Oracle 错误代码(ORA)对照表

ORA-00001: 违反唯一约束条件 (.)错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。ORA-00017: 请求会话以设置跟踪事件ORA-00018: 超出最大会话数ORA-00019: 超出最大会话许可数ORA-00020: 超出最大进程数 ()ORA-00021: 会话附属于其它某些进程;无法转换会话ORA-00022: 无效的会话 ID;访问被拒绝ORA-0002...

2019-04-10 15:24:43 23730

转载 数据包最大帧字节和最小帧字节

一、数据包最大帧(1526字节)    根据rfc894的说明,以太网封装IP数据包的最大长度是1500字节,也就是说以太网最大帧长应该是以太网首部加上1500,再加上7字节的前导同步码和1字节的帧开始定界符,具体就是:7字节前导同步码 + 1字节帧开始定界符 + 6字节的目的MAC + 6字节的源MAC + 2字节的帧类型 + 1500 + 4字节的FCS。    按照上述,最大帧应该是

2016-01-13 09:56:12 12844 1

转载 Ubuntu系统修改源和替换软件源的方法

前言Ubuntu下修改和替换更新软件源有两种方法:图形界面修改和终端修改替换源文件图形界面修改软件源图形界面修改软件源是最快也是最方便的(Ubuntu) 打开Ubuntu软件中心,如下图,点击顶部面板的“编辑”然后就可看到“软件源”选项了: 点击之后填出软件源编辑窗口,如图按钮,选择“其他站点” 可以选择最佳服务器,也可以直接在左边选择一个你觉得快的源,个人比较喜欢163.com 如图选择服

2015-07-31 10:45:14 9239 1

原创 Samba实现windows/ubuntu 文件共享

前言由于工作关系,本人有两台开发机,一台Linux(ubuntu)一台Windows。为了工作方便,我想能方便的实现从Windows访问Linux下的文件,当Linux下有文件需要上传到Windows时,也可以方便的直接将文件拷贝到共享文件夹中,这样从Windows就能直接看到刚刚拷贝的文件,同样的在Windows下将文件放到共享文件夹中,在Linux下也能及时的看到。好啦,废话不多说,要想实现这

2015-07-30 19:37:34 1113

原创 ubuntu下wps提示系统缺失字体

最近新装了个ubuntu15.04,然后下载安装了个WPS,但是每次打开都提示系统缺失字体,具体如下: 然后就在网上找了下怎么解决这个问题,具体如下:第一步:下载字体包http://download.csdn.net/download/wl1524520/6333049 第二步:解压安装1、下载该字体后,解压到 /usr/share/fonts/

2015-07-30 12:59:51 6267 1

原创 如何查看linux系统(硬件)信息

1、查看cpu型号:   cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c      2、查看CPU的核数:    CPU个数:    cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l     CPU物理核数:    cat /proc/cpuinfo

2015-05-07 13:55:07 792

原创 Linux 下如何产生core文件(core dump设置)

今天在Linux下调试C程序时,出现段错误,习惯性的ls下当前目录,发现没有生成core文件。惊讶了一下,怎么回事?以前都会产生的啊,难不成是程序的问题?后来同事提醒是不是系统没有打开生成core dump的设置。还真是系统设置问题,我的ubuntu14.04是新装的,之前没有进行过core dump的相关配置,别急!我们来看看怎么对linux系统设置当程序出现段错误时产生core文件:1

2015-02-05 16:43:38 56033 2

原创 /etc/passwd 文件不小心删除了,机器重启起不来

今天中午不知道怎么本想

2014-10-28 16:26:10 7349

原创 ssh登陆忽略known_hosts文件(ssh 登陆提示Host key verification failed.)

今天在登陆自己测试机时,输入

2014-10-28 16:10:44 18047 1

转载 EDNS

随着业务的复杂化和多样化,RFC1035中定义的DNS消息格式和它支持的消息内容已经不足以满足一些DNS服务器的需求,于是,RFC2671中提出了一种扩展DNS机制EDNS(Extension Mechanisms for DNS),并在其中推荐了一种传递包大小的EDNS0。我将EDNS0中的一些关键内容总结在这篇文章中,以便日后翻阅,同时希望能够帮助到像我这样迷茫过的、探寻EDNS很久才知道其概

2014-10-24 16:26:31 3190

原创 linux下终端中区分数字0和字母o及数字1和字母l

在日常使用和编程中,

2014-10-24 13:41:36 4605

转载 DNS消息格式

一,简介空谈误国,要让一大堆抽象的DNS概念落地,还是需要了解DNS消息格式的,本文会尽量详细地介绍DNS消息格式的每一个字段。也可以移步rfc1035了解。二,概览DNS消息主要由五部分组成,如下图所示:Header消息头部QuestionDNS请求Answer回答请求的资源记录(Reso

2014-10-24 09:37:07 896

原创 git使用手册(总结)

一、概念Ø 工作区:working directory工作目录Ø 暂存区:index(stage), 只有被增加到暂存区的修改才会被提交到版本库Ø 版本库:仓库(repository),修改要先添加到暂存区才能被提交Ø HEAD:指向最后一次提交的结果 二、使用Ø 创建版本库#git init Ø 把文件提交到仓库第一步:将文件增加到暂存区#git 

2014-10-16 20:22:49 794

原创 dnsenum 域名信息收集工具

1、背景     今天wu yi zhong

2014-07-14 14:57:33 8677 1

原创 vim 键盘图,桌面背景的最佳选择

vim键盘图

2014-07-09 09:57:45 5744

转载 Linux wget命令用法详解

wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上。它有以下功能和特点:(1)支持断点下传功能;这一点,也是网络蚂蚁和FlashGet当年最大的卖点,现在,Wget也可以使用此功能,那些网络不是太好的用户可以放心了;(2)同时支持FTP和HTTP下载方式;尽管现在大部分软件可以使用HTTP方式下载,但是,有些时候

2014-01-21 18:42:39 1017 1

转载 TCP/IP网络基础

1、TCP/IP概述;TCP/IP实际上并不是一个协议,而是一组协议,它包括IP、TCP、UDP、ICMP、ARP等;1.1 什么是IP、ARP、ICMP、UDP;IP (Internet Protocol),网际协议;IP是TCP/IP 的最底层,高层协议都要转化为IP包,IP包含了源地址和目的地址,路由决策也发生在IP层;ARP (Address Resolution Prot

2014-01-03 15:51:03 1362

转载 linux socket 编程API接口介绍(附实例)

socket()我们使用系统调用socket()来获得文件描述符:#include#includeint socket(int domain,int type,int protocol);第一个参数domain设置为“AF_INET”。第二个参数是套接口的类型:SOCK_STREAM或SOCK_DGRAM。第三个参数设置为0。系统调用socket()只返回一

2014-01-03 15:31:16 4145

转载 linux-Tcp IP协议栈源码阅读笔记

一.linux内核网络栈代码的准备知识 1. linux内核ipv4网络部分分层结构: BSD socket层: 这一部分处理BSD socket相关操作,每个socket在内核中以struct socket结构体现。这一部分的文件 主要有:/net/socket.c /net/protocols.c etcINET socket层:BS

2014-01-03 15:03:57 1181

原创 kmalloc kzalloc vmalloc malloc 和get_free_page()的区别

一、简述1、 kmalloc申请的是较小的连续的物理内存,虚拟地址上也是连续的。kmalloc和get_free_page最终调用实现是相同的,只不过在调用最终函数时所传的flag不同而已。除非被阻塞否则他执行的速度非常快,而且不对获得空间清零。2、get_free_page()申请的内存是一整页,一页的大小一般是128K。3、kzalloc 先是用 kmalloc() 申请空间 ,

2013-12-30 17:28:22 5157

转载 Linux协议栈skb操作函数介绍

接字缓冲区函数函数名功能函数形成参数描述skb_queue_empty检查队列是否为空int skb_queue_empty (struct sk_buff_head * list)list为队列头如果队列为空返回真,否则返回假skb_get

2013-12-27 10:23:24 5747

原创 alloc_skb申请函数分析

alloc_skb()用于分配缓冲区的函数。由于"数据缓冲区"和"缓冲区的描述结构"(sk_buff结构)是两种不同的实体,这就意味着,在分配一个缓冲区时,需要分配两块内存(一个是缓冲区,一个是缓冲区的描述结构sk_buff)。首先看alloc_skbstatic inline struct sk_buff *alloc_skb(unsigned int size,

2013-12-26 18:23:39 11458

转载 Linux netlink机制介绍

一、简介Netlink 是一种特殊的 socket,它是 Linux 所特有的,类似于 BSD 中的AF_ROUTE 但又远比它的功能强大,目前在最新的 Linux 内核(2.6.14)中使用netlink 进行应用与内核通信的应用很多,包括:路由 daemon(NETLINK_ROUTE),1-wire 子系统(NETLINK_W1),用户态 socket 协议(NETLINK_US

2013-12-25 16:12:55 1764

原创 【算法之道】之字符串逆序输出

一、前言字符串的逆序输出是一道经典面试题,要实现并不难,但是面试官希望看到的是面试者能否运用最简短的代码更高效的实现字符串的逆序功能。换句话说,就是做到三点:时间复杂度、空间复杂度、代码可读性。不管任何代码做到了这三点才算是好的代码。那接下来我将介绍两种实现字符串逆序的方法,具体见下文。二、实现字符串的逆序输出方法一:异或法这种方法是一种比较精简的方法,直接使用二进制来运算,更

2013-12-20 12:24:59 1978

原创 Linux下常用网络故障调试工具介绍之wireshark的安装与使用

一、简介•Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。•Wireshark不是入侵侦测软件(IntrusionDetectionSoftware,IDS)。对于网络上的异常流量行为,Wireshark不会产生警示或是任何提示。然而,仔细分析Wireshark撷取的封包能

2013-12-14 18:01:44 2103

原创 Linux下常用网络故障调试工具介绍之Tcpdump命令使用

Linux下常用网络故障调试工具介绍之Tcpdump命令使用•一、简介• TcpDump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。•基本上tcpdump的总的输出格式为:•系统时间 来源主机.端口>目标主机.端口 数据包参数

2013-12-14 17:38:23 3322

原创 Linux下常用网络故障调试工具介绍之Ping命令使用

ping命令使用介绍及怎样使用Ping命令来测试网络连通性一、ping命令的原理和工作机制• ping命令一般用于检测网络通与不通,也叫时延,其值越大,速度越慢PING(PacketInternet Grope),因特网包探索器,用于测试网络连接量的程序。• ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP回声应答。它是用来检查网络是否通畅

2013-12-14 16:51:10 12495 2

原创 怎样修改Linux的hostname

怎样修改Linux的hostname Linux操作系统的hostname是一个kernel变量,可以通过hostname命令来查看本机的hostname。也可以直接cat  /proc/sys/kernel/hostname查看。#hostname#cat/proc/sys/kernel/hostname上面两种输出结果相同。一、修改运行时Linux系统的host

2013-12-13 16:20:48 854

原创 Linux系统在未登录的情况下修改root密码方法(linux系统忘记root密码,进不去系统怎么办)

Linux root密码修改方法  对于一些版本的OS(如redhat)来说,编辑grub,在后面加上“single”即可进入单用户模式。但是对于debian来说,这种方式是无效的,因为debian进入单用户模式也需要你输入root用户的密码。下面介绍一个在所有版本linux的grub上均可以使用的方法:1、当出现grub菜单出现系统选择的时候,选择要进入的系统,按e进入编辑模

2013-12-13 15:29:30 3344

原创 Linux静态/动态链接库的创建和使用

Linux静态/动态链接库的创建和使用   正文: 和Windows系统一样Linux也有静态/动态链接库,下面介绍创建和使用方法:    假设有下面几个文件: 头文件String.h,声明相关函数原形,内容如下: Strlen.c:函数Strlen的实现,获取给定字符串的长度,内容如下: Strlnen.c:函数StrNlen的实现,获取给定字符串的长度,如果

2013-12-13 14:52:37 1171

原创 Linux下静态、动态库(隐式、显式调用)的创建和使用及区别

Linux下静态、动态库(隐式、显式调用)的创建和使用及区别一、静态链接库的创建与使用:1、编写add.c 及main.c代码:/**************************************************************************//*add.c*/int add(int x, int y){return x + y;

2013-12-13 13:58:20 9924 2

信安图集.rar

内涵各种安全相关思维导图,比如《Web攻击及防御技术》、《wifi渗透流程》、《Bootstrap框架思维导图》、《安全工程师技能成长图谱》、《常用网络协议审图》、《工控安全防护体系》、《缓冲区溢出攻击及防御技术》、《口令破解及防御技术》、《木马攻击及防御技术》、《首席信息安全官技能地图》、《网络安全发展及未来》、《网络攻击与防范图谱》、《运维安全知识导图》、《信息安全能力集》、《安全技术设计框架》

2019-08-28

RedHat6.2 yum源配置

RedHat6.2 yum源配置方法,亲试成功!

2013-12-13

APUE读书笔记《UNIX环境高级编程第二版》

该APUE读书笔记为《UNIX环境高级编程第二版》的读书心得,整理的非常详细,很适合当工具书和参考,基本囊括了证书的内容

2012-12-29

Makefile万能通用版(C++和C混合编译也适用)

通用版,Makefile C++和c混合编译

2012-12-25

Linux静态链接库动态链接库的创建和使用及区别

经本人实验通过,并总结于此,如有错误望指正

2012-12-25

深入理解Linux内核(第三版)中文版.pdf

本书基于Linux2.6内核系列详细介绍Linux内核系统,覆盖了从核心内核系统的应用到内核设计与实现等各方面的内容。主要内容包括:进程管理、系统调用、中断和中断处理程序、内核同步、时间管理、内存管理、地址空间、调试技术等。本书理论联系实践,既介绍理论也讨论具体应用,能够带领读者快速走进 Linux内核世界,真正开发内核代码。 能够把linux内核在短短300页叙述一遍,本身就是高难度的事情。但这本书确实做到了。

2012-11-03

深入理解计算机系统(原书第2版).pdf

深入理解计算机系统(原书第2版).pdf 非图片扫描版,超清晰

2012-11-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除