概述
IP地址
IP地址基本概念
IP地址(Internet Protocol Address)是指互联网协议地址,又译为网际协议地址。
IP地址在网络层将不同的物理网络地址统一到了全球唯一的IP地址上(屏蔽物理网络差异),是唯一标识互联网上计算机的逻辑地址(相当于手机号码,可以通过唯一的手机号码找到手机),所以IP地址也被称为互联网地址(可见其重要性)。
IP地址格式
我们目前常用的IPv4中规定,IP地址长度为32位二进制,在表示时,一般将32位地址拆分为4个8位二进制,再转为4个十进制数表示,每个数字之间用点隔开,如127.0.0.1(localhost),这种描述方式被称为“点-数表示法”。
IP地址层次:分为网络号和主机号两个层次。网络号表示主机所属网络,主机号表示主机本身。网络号与主机号的位数与IP地址分类有关。
IP地址组成: 32位二进制组成 点分十进制
11111111 11111111 11111111 11111111
255.255.255.255
二进制在线转换
https://www.xiao84.com/tools/103105.html
二进制转换十进制
二进制 十进制
00000001 ===== 1
00000010 ===== 2
00000100 ===== 4
00001000 ===== 8
00010000 ====== 16
00100000 ====== 32
01000000 ====== 64
10000000 ====== 128
1 1 1 1 1 1 1 1
128 64 32 16 8 4 2 1
二进制转十进制将每一位为1的二进制进行相加得到十进制
例:
0 1 0 0 0 1 0 1 ======= 等于十进制 69
64 4 1 64+4+1=69
1 0 1 0 0 0 0 0 ======= 等于十进制 160
128 32 128+32=160
十进制转换二进制
192 转换成8位二进制 做从前往后相减 能减成功则为1
例:
192-128=64
64-64=0
1 1 0 0 0 0 0 0
IP地址十进制与二进制对应关系
IP地址分配
IP地址分配的基本原则是:要为同一网络(子网、网段)内不同主机分配相同的网络号,不同的主机号。
IP地址类型
#公有地址
公有地址(Public address)由Inter NIC(Internet Network Information Center因特网信息中心)负责。这些IP地址分配给注册并向Inter NIC提出申请的组织机构。通过它直接访问因特网。全球唯一,不能出现重复.
#私有地址
私有地址(Private address)属于非注册地址,专门为组织机构内部使用。缓解了地址枯竭 是可以重复使用的(不同局域网内)
#以下列出留用的内部私有地址
A类 10.0.0.0–10.255.255.255
B类 172.16.0.0–172.31.255.255
C类 192.168.0.0–192.168.255.255
需要实现配置私网地址的服务器可以访问外网(互联网)???
NAT — 网络地址转换技术(化妆),将私网地址转换为公网地址
IP地址常见分类
#A类IP地址
一个A类IP地址是指, 在IP地址的四段号码中,第一段号码为网络号码,剩下的三段号码为本地计算机的号码。如果用二进制表示IP地址的话,A类IP地址就由1字节的网络地址和3字节主机地址组成,网络地址的最高位必须是“0”。A类IP地址中网络的标识长度为8位,主机标识的长度为24位,A类网络地址数量较少,有126个网络,每个网络可以容纳主机数达1600多万台。
A类IP地址 地址范围1.0.0.1到127.255.255.254 (二进制表示为:00000001 00000000 00000000 00000001 - 01111111 11111111 11111111 11111110)。最后一个是广播地址。
A类IP地址的子网掩码为255.0.0.0,每个网络支持的最大主机数为256的3次方-2=16777212台。
11111111 11111111 11111111 11111111
----------- -------------------------------------
网络位 主机位(可用的IP地址)
子网掩码: 255.0.0.0 子网掩码决定了IP地址可用数量
网络位: 前3个8位不能变 相当于区域 海淀区 昌平区
主机位: 最后8位二进制 为主机位 可用IP地址数量 1-254
1 1 1 1 1 1 1 1 不同的组合方式表示不同的IP地址
128 64 32 16 8 4 2 1 = 255 广播255地址不能用
#B类IP地址
一个B类IP地址是指,在IP地址的四段号码中,前两段号码为网络号码。如果用二进制表示IP地址的话,B类IP地址就由2字节的网络地址和2字节主机地址组成,网络地址的最高位必须是“10”。B类IP地址中网络的标识长度为16位,主机标识的长度为16位,B类网络地址适用于中等规模的网络,有16384个网络,每个网络所能容纳的计算机数为6万多台。
B类IP地址地址范围128.0.0.1-191.255.255.254 (二进制表示为:10000000 00000000 00000000 00000001----10111111 11111111 11111111 11111110)。 最后一个是广播地址。
B类IP地址的子网掩码为255.255.0.0,每个网络支持的最大主机数为256的2次方-2=65534台。
B类地址
11111111 11111111 11111111 11111111
------------------------ ------------------------
网络位 主机位
子网掩码: 255.255.0.0
#C类IP地址
一个C类IP地址是指,在IP地址的四段号码中,前三段号码为网络号码,剩下的一段号码为本地计算机的号码。如果用二进制表示IP地址的话,C类IP地址就由3字节的网络地址和1字节主机地址组成,网络地址的最高位必须是“110”。C类IP地址中网络的标识长度为24位,主机标识的长度为8位,C类网络地址数量较多,有209万余个网络。适用于小规模的局域网络,每个网络最多只能包含254台计算机。
C类IP地址范围192.0.0.1-223.255.255.254 (二进制表示为: 11000000 00000000 00000000 00000001 - 11011111 11111111 11111111 11111110)。
C类IP地址的子网掩码为255.255.255.0,每个网络支持的最大主机数为256-2=254台
C类地址
11111111 11111111 11111111 11111111
------------------------------------- -----------
网络位 主机位
子网掩码: 255.255.255.0
#D类地址用于多点广播(Multicast)。
D类IP地址在历史上被叫做多播地址(multicast address),即组播地址。在以太网中,多播地址命名了一组应该在这个网络中应用接收到一个分组的站点。多播地址的最高位必须是“1110”,范围从224.0.0.0到239.255.255.255。
#E类IP地址
以“llll0”开始,为将来使用保留。
特殊的IP地址
1.每一个字节都为0的地址(“0.0.0.0”)对应于当前主机;
2.IP地址中的每一个字节都为1的IP地址(“255.255.255.255”)是当前子网的广播地址;
3.IP地址中凡是以“11110”开头的E类IP地址都保留用于将来和实验使用。
4.IP地址中不能以十进制“127”作为开头,该类地址中数字127.0.0.1到127.255.255.255用于回路测试,如:127.0.0.1可以代表本机IP地址,用“http://127.0.0.1”就可以测试本机中配置的Web服务器。
5.169.254.0.0~169.254.255.255,是开启了dhcp服务的设备但又无法获取到dhcp的会随机使用这个网段的ip
子网掩码
子网掩码又叫网络掩码、地址掩码
上面我们说到IP地址分为网络号与主机号,但是路由如何区分网络号与主机号呢?就需要通过子网掩码。子网掩码必须与IP地址结合使用,A、B、C类的子网掩码分别为255.0.0.0,255.255.0.0与255.255.255.0(网络号字节为255,主机号字节为0)。
也就是说给你一个IP地址,那么怎么知道它的网络号和主机号各是多少位呢?
如果不指定,就不知道哪些位是网络号、哪些是主机号,这就需要通过子网掩码来实现
子网掩码的重要作用:就是将某个IP地址划分成网络地址和主机地址两部分。
子网掩码的位数就是网络的位数。A类网络的网络位数是8位,子网掩码就是255.0.0.0,B类网络的网络位数是16位,子网掩码是255.255.0.0,C类是24位,255.255.255.0。
例:不同子网下的主机能否直接通信(是否在同一网络/段下)
假设两个IP地址分别是172.20.0.18和172.20.1.16,子网掩码都是255.255.255.0。
我们可以知道两者的网络标识分别是172.20.0和172.20.1,无法直接通信,也就无法PING通。要想能相互通信,需要将子网掩码改成255.255.0.0
如何理解172.20.1.0/18
为什么要子网划分**
一个大的地址范围区域,你不进行划分的时候,会造成地址浪费
一个大的地址范围区域,可能会产生大量广播风暴,影响主机性能
一个大的地址访问区域,可能会造成网关路由器负载过高
将一个大的网段切割成一个一个小的局域网段,就称为子网划分
一个网段中可以有多少个地址=2的n次方-2 n表示的就是这个网段中有多少个主机位
-2 表示网络地址不能用 表示广播地址不能用
一个局域网中的地址在使用时要预留一个作为网关地址
网络位向右移动,占用主机位,即向主机位借位,生成新的网络位
其中/16就表示了子网掩码所指定的网络位个数,A类一般是/8 B类一般是/16 C类/24
;
示例:
子网划分: 将大的网段分成多个独立的小的子网 避免IP地址浪费
172.16.0.0 B类IP 子网掩码 255.255.0.0
子网掩码二进制:
11111111 1111111 00000000 0000000
---------------------- --------------------------
网络位 主机位
划分两个子网 往后借1
11111111 11111111 10000000 0000000 /16 变为/17
我们向主机位借的1表示方式 两种 0 1
网络位表示方式两种:
第一种:
11111111 11111111 0 0000000 00000000 -------> 转换为十进制 172.16.0
可用IP地址数量:
11111111 11111111 0 0000000 00000001 --------> 172.16.0.1
11111111 11111111 0 0000000 00000010 ---------> 172.16.0.2
…
11111111 11111111 0 0000000 11111110 -----------> 172.16.0.254
11111111 11111111 0 0000001 11111110 ------------> 172.16.1.1—172.16.1.254
11111111 11111111 0 0000010 11111110 ------------>172.16.2.1—172.16.2.254
…
11111111 11111111 0 1111111 11111110 ------------>172.16.127.1-172.16.127.254
第二种:
11111111 11111111 1 0000000 00000000 ------> 转换十进制 172.16.128
子网掩码: 表示网络位全为1 往后借了1位 所以掩码16变为17位
11111111 11111111 1 0000000 00000000 ------> 转换十进制 255.255.128.0
可用IP地址数量:
11111111 11111111 1 0000000 00000000
11111111 11111111 1 0000000 00000001 ------> 172.16.128.1
11111111 11111111 1 0000000 00000010 ------> 172.16.128.2
11111111 11111111 1 0000000 11111110 ------> 172.16.128.254
11111111 11111111 1 0000001 11111110 ------> 172.16.129.1-172.16.129.254
11111111 11111111 1 0000010 11111110 ------> 172.16.130.1-172.16.130.254
11111111 11111111 1 0000011 11111110 ------> 172.16.131.1-172.16.131.254
11111111 11111111 1 1111111 11111110 ------> 172.16.255.1-172.16.255.254
172.16.128.1-172.16.255.254
企业中避免公网IP地址浪费 运营商如何给我们分配公网
注意: 云服务器 直接购买公网IP地址即可
1.新开通的专线业务 需要公网IP地址 办理专线运营商免费送的5个IP地址
2.服务器需要配置公网IP地址
运营商或者IDC机房给我们一个划分好的子网:
116.63.0.10/28
将对应的IP地址配置到需要公网的服务器上
http://www.ab173.com/net/subnetmask.php # 在线子网IP计算
网关
网关(Gateway)又称网间连接器,就是一个网络连接到另一个网络的“关口”。
网关实质上是一个网络通向其他网络的IP地址。比如有网络A和网络B,网络A的IP地址范围为“192.168.1.1~192. 168.1.254”,子网掩码为255.255.255.0;网络B的IP地址范围为“192.168.2.1~192.168.2.254”,子网掩码为255.255.255.0。在没有路由器的情况下,两个网络之间是不能进行TCP/IP通信的,即使是两个网络连接在同一台交换机(或集线器)上,TCP/IP协议也会根据子网掩码(255.255.255.0)判定两个网络中的主机处在不同的网络里。而要实现这两个网络之间的通信,则必须通过网关。如果网络A中的主机发现数据包的目的主机不在本地网络中,就把数据包转发给它自己的网关,再由网关转发给网络B的网关,网络B的网关再转发给网络B的某个主机(如附图所示)。网络B向网络A转发数据包的过程。
所以说,只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。
抓包方式
*抓包方式:wireshark抓包软件在Windows中使用*
*Linux抓包命令tcpdump是一个抓包工具,用于抓取互联网上传输的数据包*
tcpdump是一个用于截取网络分组,并输出分组内容的工具。凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具
tcpdump 支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息
#常用选项
-i #监听哪一个网卡
-n #不把ip解析成主机名
-nn #不把端口解析成应用层协议
-c #指定抓包的数量
-S #不把随机序列和确认序列解析成绝对值
-w #将流量保存到文件中,文件中的信息是无法直接查看的
-r #读取文件中的内容
-v #输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。
-vv #输出详细的报文信息。
用法:
1、默认启动
tcpdump -vv #普通情况下,直接启动tcpdump将监视第一个网络接口上所有流过的数据包。
2、过滤主机
tcpdump -i eth1 host 192.168.1.1 #抓取所有经过eth1,目的或源地址是192.168.1.1的网络数据
tcpdump -i eth1 src host 192.168.1.1 #指定源地址,192.168.1.1
tcpdump -i eth1 dst host 192.168.1.1 #指定目的地址,192.168.1.1
3、过滤端口
tcpdump -i eth1 port 80 #抓取所有经过eth1,目的或源端口是80的网络数据
tcpdump -i eth1 src port 80 #指定源端口
tcpdump -i eth1 dst port 80 #指定目的端口
4、协议过滤
tcpdump -i eth1 arp
tcpdump -i eth1 ip
tcpdump -i eth1 tcp
tcpdump -i eth1 udp
tcpdump -i eth1 icmp
#抓tcp某端口的数据包
tcpdump -i eth0 tcp port 21 -nn
5、常用表达式
非 : ! or “not” (去掉双引号)
且 : && or “and”
或 : || or “or”
#抓取所有经过eth1,目的地址是192.168.1.254或192.168.1.200端口是80的TCP数
tcpdump -i eth1 ‘((tcp) and (port 80) and ((dst host 192.168.1.254) or (dst host 192.168.1.200)))’
#抓取所有经过eth1,目标MAC地址是00:01:02:03:04:05的ICMP数据
tcpdump -i eth1 ‘((icmp) and ((ether dst host 00:01:02:03:04:05)))’
#抓取所有经过eth1,目的网络是192.168,但目的主机不是192.168.1.200的TCP数据
tcpdump -i eth1 ‘((tcp) and ((dst net 192.168) and (not dst host 192.168.1.200)))’
通过Linux系统连接Linux系统 使用ssh连接 [root@b13k ~]# ssh 10.0.0.200
案例:无法连接服务器如何使用抓包工具排查
在公司连接云服务器
公司连接IDC机房
1)确认安全组放行
2)确认服务器的防火墙放行
3)确认服务器有公网IP正常
4)tcpdump检查
例如: tcpudmp -i eth0 port 12345
在企业笔记本上进行远程连接
cmd命令 或者 xshell的本地连接
telnet 服务器的公网IP 12345
问题1: 来源IP地址和自己公司的公网IP地址对应不上
看公司公网IP地址:
百度输入IP
网址: ip138.com
linux curl cip.cc
问题2: 数据包能进来 但是没有回复 服务器防火墙第三方安全软件或者安全组问题
Linux常用网络命令
网卡命令规则
CentOS-6之前基于传统的命名方式如:eth1,eth0…
Centos-7提供了不同的命名规则,默认是基于固件、拓扑、位置信息来分配。这样做的优点是命名是全自动的、可预知的,缺点是比eth0、wlan0更难读。比如enp5s0
biosdevname和net.ifnames两种命名规范
#net.ifnames的命名规范为:
设备类型+设备位置+数字
#设备类型:
en 表示Ethernet
wl 表示WLAN
ww 表示无线广域网WWAN
#实际的例子:
eno1 #板载网卡
enp0s2 #pci网卡
ens33 #pci网卡
wlp3s0 #PCI无线网卡
wwp0s29f7u2i2 #4G modem
wlp0s2f1u4u1 #连接在USB Hub上的无线网卡
#biosdevname的命名规范为:
根据系统BIOS提供的信息对网络接口进行重命名。
em[1-N] #表示主板(嵌入式)NIC (对应机箱标签)
pci #表示PCI插槽中的卡,端口1至N
实际的例子:
em1 #板载网卡
p3p4 #pci网卡
p3p4_1 #虚拟网卡
CentOS-7
默认内核参数(biosdevname=0(dell服务器默认是1),net.ifnames=1): 网卡名 “enp5s2”
biosdevname=1,net.ifnames=0:网卡名 “em1”
biosdevname=0,net.ifnames=0:网卡名 “eth0” (最传统的方式,eth0 eth1)
#定义网卡命令规则
在安装系统时,选择安装选项,按tab键,在跳出的一行内容后面添加net.ifnames=0 biosdevname=0
#命令行设置网卡名称规则
[root@b13k ~]# cd /etc/sysconfig/network-scripts/ #修改网卡配置文件
[root@b13k network-scripts]# mv ifcfg-ens33 ifcfg-eth0
[root@b13k network-scripts]# sed -i "s#ens33#eth0#g" ifcfg-eth0
[root@b13k ~]# vim /etc/sysconfig/grub #GRUB添加kernel参数
GRUB_CMDLINE_LINUX="...net.ifnames=0 biosdevname=0 quiet"
[root@b13k ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
[root@b13k ~]# reboot #重启系统生效
网卡配置文件详解
#动态ip
[root@b13k ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="eth0"
UUID="fb32c09d-5a9f-40b9-852b-0f44ff2202ed"
DEVICE="eth0"
ONBOOT="yes"
#静态ip
[root@b13k ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE="Ethernet"
BOOTPROTO="static"
NAME="eth0"
DEVICE="eth0"
ONBOOT="yes"
IPADDR="10.0.0.88"
NETMASK="255.255.255.0"
GATEWAY="10.0.0.254"
DNS1="223.5.5.5"
DNS2="223.6.6.6"
#详解:
TYPE=Ethernet #网卡类型,一般是Ethernet,还有其他的如bond,bridge
BOOTPROTO=dhcp #获取IP地址的方式,启动的协议,获取配置的方式。
dhcp表示动态获取
static或none表示静态手工配置,若想使用本地配置好的IP则应该设置成这个
DEFROUTE=yes #是否设置默认路由,若为yes则可以在该文件通过PREFIX这个参数来设置子网掩码
PEERDNS=yes #yes表示由DHCP来获取DNS, no表示/etc/resolv.conf来控制,默认为yes。
yes:如果DNS设置,修改/etc/resolv.conf中的DNS
no:不修改/etc/resolv.conf中的DNS
NAME=eth0 #这个参数对应的值是网卡名,是给用户看的
UUID=... #通用唯一识别码,若vmware克隆的虚拟机无法启动网卡可以去除此项
DEVICE=eth0 #系统逻辑设备名
ONBOOT=yes #开机启动时是否激活网卡设备,centos7装完网卡后默认设置成no
HWADDR=... #以太网硬件地址,mac地址)。若是vmware克隆的虚拟机无法启动网卡,也要改这个。
NM_CONTROLLED=yes #是否通过NetworkManager管理网卡设备
IPADDR=... #设置网卡对应的IP地址,网络服务启动,网卡激活后会自动将该地址配置到网卡上
前提(BOOTPROTO=static)而不是dhcp
PREFIX=24 #子网掩码长度,不要这么写PREFIX=255.255.255.0
NETMASK=255.255.255.0 #生产环境中一般用这种方式指定子网掩码
GATEWAY=10.0.0.254 #该网卡配置的IP对应的网关(默认路由)
若主机是多网卡设备,该参数只能在一个网卡配置文件里面出现,一台主机只有一个默认路由
DNS1=... #主DNS,若这里设置了值,则会优先于/etc/resolv.conf中设置的DNS服务器的地址
需要和“PEERDNS=no”配合使用
DNS2=... #次dns
USERCTL=no #USERCTL=yes/no是否允许非root用户控制该设备
IPV6INIT=no #是否启用IPV6
BROADCAST=... #广播地址
PROXY_METHOD=none #代理方式,一般不用这个参数
BROWSER_ONLY=no #没有什么用。
#修改网卡配置文件的方法
vim /etc/sysconfig/network-scripts/ifcfg-eth0
nmtui #需要开启NetworkManger
网络管理命令
ping
ping命令主要的功能是用来检测网络的连通情况和分析网络速度。
#常用选项
-t #持续ping,不中断。不加该选项只ping4个包。
-c #ping的包数,默认是4个。
-W #多长时间ping一次。
-f #极速ping。
windows ping命令默认4个包
-w 回复超时时间
ping www.baidu.com -t 持续ping 一直不停的ping
ping -n 10 www.baidu.com ping10个包
企业中网络服务器丢包严重: ping -n 100 www.baidu.com
Linux 默认持续ping
-c 指定包的个数
[root@lb01 ~]# ping -c 2 www.baidu.com
PING www.a.shifen.com (110.242.68.4) 56(84) bytes of data.
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=1 ttl=128 time=11.4 ms
64 bytes from 110.242.68.4 (110.242.68.4): icmp_seq=2 ttl=128 time=12.1 ms
-W 回复超时时间
[root@lb01 ~]# ping -c2 -W1 www.sina.com
PING spool.grid.sinaedge.com (123.126.45.205) 56(84) bytes of data.
64 bytes from 123.126.45.205 (123.126.45.205): icmp_seq=1 ttl=128 time=6.69 ms
64 bytes from 123.126.45.205 (123.126.45.205): icmp_seq=2 ttl=128 time=5.44 ms
nc
nc是netcat的简写,有着网络界的瑞士军刀美誉。因为它短小精悍、功能实用,被设计为一个简单、可靠的网络工具
#常用选项
-l #用于指定nc将处于侦听模式。
-u #指定nc使用UDP协议,默认为TCP
-v #输出交互或出错信息,新手调试时尤为有用
-w #超时秒数,后面跟数字
-z #表示zero,表示扫描时不发送任何数据
nmap
企业: 扫描内部服务器开启哪些服务和端口号并且计算每个服务占所有服务的百分比(安全工作)
Nmap即网络映射器对Linux系统/网络管理员来说是一个开源且非常通用的工具。Nmap用于在远程机器上探测网络,执行安全扫描,网络审计和搜寻开放端口。
#常用选项
-p #指定端口号
-p22 #单个端口
-p22,80 #多个端口
-p1-1000 #1到1000之间的端口
1、nmap 主机地址—— 对基本服务和端口进行扫描
2、nmap -sT 主机地址——对TCP进行端口扫描
netstat -a——通过对每个端口进行tcp连接来确定端口是否存在(有点:精确度高)
3、nmap -sS 主机地址——对SYN进行端口扫描(使用频率高)
同理也可以使用netstat -a 命令SYN连接来确定发端口是否存在
4、nmap -sU 主机地址——对UDP进行端口扫描
同理也可以使用netstat -a命令对UDP连接来确定端口是否存在
5、nmap -F 主机地址——仅扫描常用的100个端口
6、nmap -p 端口范围 主机地址——在端口范围内扫描
7、nmap -r 主机地址 ——按照端口从小到大的顺序扫描
8、nmap 主机地址 -oX mysacn.xml——将扫描主机的结果保存在mysacn.xml中
9、xsltproc mysacn.xml -o myscan.html——将myscan的文件类型xml改为html
10、nmap -sV 主机地址——识别端口服务程序的版本信息
11、nmap -O 主机地址——识别操作系统
12、nmap -sC 主机地址——端口脚本扫描
13、nmap -A 主机地址——强力扫描,此操作可能会较慢,它将会扫描服务版本信息(-sV)、操作系统(-O)、脚本扫描(-sC)
14、nmap -sA 主机地址 ——TCP ACK扫描
15、nmap -sI 主机地址——TCP ldle扫描
16、nmap -sn 主机地址——对目标进行ping 检测,不进行端口扫描
17、nmap -sP 主机地址——仅仅对目标进行Ping检测
18、nmap --System-dns 主机地址——对系统的服务器dns进行扫描
telnet
一种远程登录的工具。同样可以检查某个主机是否开启某个端口
#用法(Windows CMD)
[C:~]$ telnet 10.0.0.99 22
Connecting to 10.0.0.99:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.
SSH-2.0-OpenSSH_7.4
netstat 重要 查看端口是否启动
netstat -tnulp
打印网络连接、路由表、tcp11种状态。
#常用选项
-l #只显示监听套接字。
-n #不做名字解析
-t #显示tcp端口
-u #显示udp端口
-p #显示pid和程序名字
-r #显示路由表
-a #显示所有的套接字
ss
跟netstat命令差不多。
#常用选项
-l #只显示监听套接字。
-n #不做名字解析
-t #显示tcp端口
-u #显示udp端口
-p #显示pid和程序名字
-r #解析主机名
-a #显示所有的套接字
tracert
(windows) 路由跟踪(检查你与目标之间每个路口是否畅通)
#常用选项
-d #禁止把IP解析为对应的域名(主机名)
traceroute
路由跟踪(检查你与目标之间每个路口是否畅通)
#常用选项
-n 禁止把IP解析为对应的域名(主机名)
iftop
iftop界面说明:
界面上面显示的是类似刻度尺的刻度范围,为显示流量图形的长条作标尺用的。
中间的<= =>这两个左右箭头,表示的是流量的方向。
TX:发送流量
RX:接收流量
TOTAL:总流量
Cumm:运行iftop到目前时间的总流量
peak:流量峰值
rates:分别表示过去 2s 10s 40s 的平均流量
#常用选项
-i #设定监测的网卡
-B #以bytes为单位显示流量(默认是bits)
-n #使host信息默认直接都显示IP
-P #使host信息及端口信息默认就都显示
-m #设置界面最上边的刻度的最大值,刻度分五个大段显示
按q退出监控。
dstat -nf
一流量监控
route
route命令用于显示和操作IP路由表
查看路由网关
查看网卡配置文件 cat /etc/sysconfig/network-scripts/ifcfg-eth0
使用命令查看网关:
[root@b13k ~]# route -n # 必须安装net-tools网络工具包
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.2 0.0.0.0 UG 100 0 0 eth0
删除默认网关 (临时)
[root@b13k ~]# route del default gw 10.0.0.2
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
172.16.1.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
配置一条默认网关 去往任意的地址 走 10.0.0.254 (临时)
[root@b13k ~]# route add default gw 10.0.0.254
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.254 0.0.0.0 UG 0 0 0 eth0
[root@b13k ~]# ip route replace default via 10.0.0.2
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.2 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
172.16.1.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
通过配置静态路由的方式配置网关 (临时)
配置一条去往 192.168.0.0/24 网关 10.0.0.254
[root@b13k ~]# ip route add 192.168.0.0/24 via 10.0.0.254
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
172.16.1.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
192.168.0.0 10.0.0.254 255.255.255.0 UG 0 0 0 eth0
删除路由:
[root@b13k ~]# ip route del 192.168.0.0/24 via 10.0.0.254
配置默认的路由:
[root@b13k ~]# ip route add 0/0 via 10.0.0.2
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 10.0.0.2 0.0.0.0 UG 0 0 0 eth0
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
172.16.1.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
删除路由
[root@b13k ~]# ip route del 0/0 via 10.0.0.2
[root@b13k ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
10.0.0.0 0.0.0.0 255.255.255.0 U 100 0 0 eth0
172.16.1.0 0.0.0.0 255.255.255.0 U 101 0 0 eth1
网卡配置多个IP地址: 一个网卡支持多IP地址 临时配置重启失效
永久生效写入rc.local中 (给执行权限)
ip addr
[root@b13k ~]# ip addr add 10.0.0.202/24 dev eth0 # 给eth0网卡添加一个IP地址
[root@b13k ~]# ip addr del 10.0.0.202/24 dev eth0 #删除一个IP地址
netstat -tnulp
查看当前进行服务的端口号
[root@b13k ~]# netstat -tnulp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1198/sshd
最后
以上就是过时白羊为你收集整理的【笔记】IP地址详解、Linux网络及常用命令IP地址Linux常用网络命令的全部内容,希望文章能够帮你解决【笔记】IP地址详解、Linux网络及常用命令IP地址Linux常用网络命令所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复