• 忘掉天地
  • 仿佛也想不起自己
bingliaolongBingliaolong  2020-11-09 06:23 Aet 隐藏边栏 |   抢沙发  2 
文章评分 1 次,平均分 5.0

IP

ip协议中,用来标识网络中不同主机的地址
ip数据包的头部,有两个ip地址,源ip地址,目标ip地址

  • IPV4
    • 4个字节,32位整数
    • 192.168.0.1
  • IPV6

端口号

用来标识一个进程,告诉操作系统当前的数据包交由哪个进程处理
ip+端口号,能够标识网络上某一台主机的某个进程
一个端口号只能被一个进程占用
传输层协议(tcpudp)的数据段中,有两个端口号,源端口号,目标端口号

  • port
    • 2个字节,16位整数

pid表示唯一一个进程,端口号也用来标识进程,区别是什么?

  • 进程ID是由操作系统内核进行分配和管理的,而端口号则是由通讯协议内核分配并管理的
  • 通讯协议内核在分配端口时会记录进程id,并维持一张对应的表进行管理
  • 一个进程可以绑定多个端口号,而一个端口号不能被多个进程绑定

网络字节序

内存中的多字节数据相对内存地址有大小端之分
磁盘文件中的多字节数据相对文件中的偏移地址有大小端之分

  • 大端,低地址存高位
  • 小端,地址值存低位

同样,网络数据流也是有大小端之分
TCP/IP协议规定:网络数据流应采用大端字节序

socket

domain

名称 含义
PF_UNIX,PF_LOCAL 本地通信
AF_INET,PF_INET IPv4 Internet协议
PF_INET6 IPv6 Internet协议
PF_IPX IPX-Novell协议
PF_NETLINK 内核用户界面设备
PF_X25 ITU-T X25 / ISO-8208协议
PF_AX25 Amateur radio AX.25
PF_ATMPVC 原始ATM PVC访问
PF_APPLETALK Appletalk
PF_PACKET 底层包访问

type

名称 含义
SOCK_STREAM Tcp连接,提供序列化的、可靠的、双向连接的字节流
SOCK_DGRAM UDP连接
SOCK_SEQPACKET 序列化包,提供一个序列化的、可靠的、双向的基本连接的数据传输通道,数据长度定常
SOCK_RAW RAW类型,提供原始网络协议访问
SOCK_RDM 提供可靠的数据报文,不过可能数据会有乱序
SOCK_PACKET 专用类型

protocol

用于指定某个协议的特定类型,即type类型中的某个类型
通常某些协议中只有一种特定类型,这样protocol参数设置为0
但是有些协议有多种特定的类型,就需要设置这个参数来选择特定的类型

工具

netstat

  • -a--all:显示所有连线中的Socket
  • -A<网络类型>或--<网络类型>:列出该网络类型连线中的相关地址;
  • -c--continuous:持续列出网络状态;
  • -C--cache:显示路由器配置的快取信息;
  • -e--extend:显示网络其他相关信息;
  • -F--fib:显示FIB
  • -g--groups:显示多重广播功能群组组员名单;
  • -h--help:在线帮助;
  • -i--interfaces:显示网络界面信息表单;
  • -l--listening:显示监控中的服务器的Socket
  • -M--masquerade:显示伪装的网络连线;
  • -n--numeric:直接使用ip地址,而不通过域名服务器;
  • -N--netlink--symbolic:显示网络硬件外围设备的符号连接名称;
  • -o--timers:显示计时器;
  • -p--programs:显示正在使用Socket的程序识别码和程序名称;
  • -r--route:显示Routing Table
  • -s--statistice:显示网络工作信息统计表;
  • -t--tcp:显示TCP传输协议的连线状况;
  • -u--udp:显示UDP传输协议的连线状况;
  • -v--verbose:显示指令执行过程;
  • -V--version:显示版本信息;
  • -w--raw:显示RAW传输协议的连线状况;
  • -x--unix:此参数的效果和指定"-A unix"参数相同;
  • --ip--inet:此参数的效果和指定"-A inet"参数相同。

tcpdump

  • tcpdump
    • 直接启动tcpdump将监视第一个网络接口上所有流过的数据包
  • tcpdump -i eth1
    • 监视指定网络接口的数据包
  • tcpdump host aet
    • 监视指定主机,打印所有进入或离开aet的数据包
  • tcpdump host 192.168.1.2
    • 指定ip,截获所有192.168.1.2收到的和发出的所有数据包
选项 说明
c 指定要抓取的包数量
i 指定 tcpdump 需要监听的接口
n 对地址以数字方式显式,否则显式为主机名
nn 此外,把端口显示为数值,否则显示端口服务名
xx 输出包的头部数据,会以 16 进制和 ASCII 两种方式同时输出,更详细
v vv vvv 当分析和打印的时候,产生更详细的输出
D 列出可用于抓包的接口

本文为原创文章,版权归所有,欢迎分享本文,转载请保留出处!

bingliaolong
Bingliaolong 关注:0    粉丝:0 最后编辑于:2021-11-20
Everything will be better.

发表评论

表情 格式 链接 私密 签到
扫一扫二维码分享