目录
一.linux网络
Linux主机接入到网络,需要配置网络相关设置:
主机名
IP/netmask
路由:默认网关
DNS服务器
主DNS服务器
次DNS服务器
第三个DNS服务器
1.1.网络配置相关命令
1.1.1.ifconfig
基础用法:[root@localhost ~]#ifconfig 显示当前主机中已启用的网络接口信息
ifconfig 具体网卡名 # 只显示具体网卡的信息(不管网卡是否被启用)
[root@localhost ~]ifconfig ens33
[root@localhost ~]# ifconfig -a # 表示显示所有网卡包括没有启动的网卡
ifconfig 网卡名称 up/down # 开启或关闭网卡
[root@localhost ~]# ifconfig lo up #开启 或 关闭网卡
ifconfig 网卡名称 ip地址 子网掩码
或 ifconfig 网卡名称 ip地址/子网掩码位数 # 临时配置网卡IP地址
[root@localhost ~]# ifconfig ens33 192.168.3.12/24
ifconfig 网卡名称:编号 IP地址 # 表示虚拟网卡
[root@localhost ~]# ifconfig ens33:0 10.0.0.1 # 启用虚拟网卡ens33:0
[root@localhost ~]# ifconfig ens33:0 down # 关闭虚拟网卡
ifconfig -s # 查看网络通信情况
[root@localhost ~]# ifconfig -s
1.1.2.IP
[root@localhost ~]# ip link # 查看数据链路层 # 拔掉网线可以查看网卡状态
[root@localhost ~]# ip addr #查看网卡的网络层
[root@localhost ~]# ip route #路由(简易路由表)
1.1.3.hostname
[root@localhost ~]# hostname # 查看当前主机名
临时修改主机名:
[root@localhost ~]# hostname 主机名
永久修改主机名------方法一:
[root@localhost ~]# vim /etc/hostname
[root@localhost ~]# reboot #重启生效
永久修改主机名------方法二:
[root@localhost ~]# hostnamectl set-hostname www.bdqn.com
1.1.4.route
查看或设置主机中路由表信息:
[root@ylchenpang ~] route -n # 将路由表中的地址信息显示为数字形式
路由表主要构成: 1.Destination: 目标网络ID,表示可以到达的目标网络ID,0.0.0.0/0 表示所有未知网络,又称为默认路由,优先级最低 |
添加指定网段的路由记录:
[root@ylchenpang ~]# route add -net 网段地址 gw ip地址
删除指定网段的路由记录:
[root@ylchenpang ~]# route del -net 网段地址 gw ip地址
添加默认路由记录:
[root@ylchenpang ~]# route add default gw ip地址
删除默认路由记录 :
[root@ylchenpang ~]# route del default gw ip地址
1.1.5.查看网络连接情况 netstat
服务不能用 ,ftp httpd网页无法访问
一般先ping 看能不能通 如果你网络不通 网络调通 防火墙 抓包
看看你的服务是否开启 syetemctl status 服务名
ss netstat 看看你的 服务端口是否被占用 一个给一个服务 网页 80 你 apache nginx
最后看你 服务的配置文件是否正确
netstat 常用选项:
-a:显示主机中所有活动的网络连接信息(包括监听、非监听状态的服务端口)
-n:以数字的形式显示相关的主机地址、端口等信息
-r:显示路由表信息
-l:显示处于监听(Listening)状态的网络连接及端口信息
-t:查看 TCP(Transmission Control Protocol,传输控制协议)相关的信息
-u:显示 UDP(User Datagram Protocol,用户数据报协议)协议相关的信息
-p:显示与网络连接相关联的进程号、进程名称信息(该选项需要 root 权限)
[root@ylchenpang ~]# netstat -ntap
[root@ylchenpang ~]# netstat -ntap | grep 22
ss(socket statistics ):
ss 命令:也可以查看网络连接情况,主要用于获取 socket 统计信息,它可以显示和 netstat 命令类似的输出内容。
ss 选项:
-t: tcp协议相关
-u: udp协议相关
-w: 裸套接字相关
-x:unix sock相关
-l: listen状态的连接
-a: 所有
-n: 数字格式
-p: 相关的程序及PID
-e: 扩展的信息
-m:内存用量
-o:计时器信息
-r: --resolve 把 IP 解释为域名,把端口号解释为协议名称
过滤出想要的信息,对比netstat
[root@ylchenpang ~]# ss -natp | grep 22
1.1.6.ping
测试网络连通性 ICMP 协议
格式:
ping [选项] 目标主机ip地址
ping -c 次数 目标主机ip地址 # 发送多少个ping包
1.1.7.traceroute
路由追踪
格式:
traceroute IP地址
1.1.8.nslookup
域名解析 nslookup
格式:
nslook 域名
1.1.9.永久修改网络相关配置文件
修改网卡配置:
BOOTPROTO=DHCP(默认是dhcp,需要手动修改成static)
以下是手动添加的内容:
IPADDR=192.168.47.3
NETMASK=255.255.255.0
GATEWAY=192.168.47.2
DNS1=8.8.8.8
1.1.10.域名解析配置文件(本地主机映射文件)
本地主机映射文件:
/etc/resolv.conf #保存的是你DNS服务器的地址
本地主机映射文件:
/etc/hosts 文件 #保存主机名与IP地址的映射记录
1.1.11.scp
远程同步:
格式:
scp 本机的文件路径 对方用户名@对方主机IP地址:指定的路径
# 将本机文件拷贝到远程主机上 #对方用户名不写的话,默认是root用户
例:scp /etc/fstab root@192.168.47.100:/opt
scp 对方用户名@对方主机IP地址:指定的路径 本机的文件路径
#将远程主机上的文件拷贝到本主机上 #对方用户名不写的话,默认是root用户
例:scp root@192.168.91.101:/opt/passwd /opt/
1.1.12.ethtool
查看网卡信息:
格式:ethtool [选项] 网卡名
选项: -i 查看网卡详细信息
-p 让网卡快速闪烁
1.1.13.tcpdump(重点)
网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息 。
抓包工具 格式:
tcpdump option proto dir type
选项 协议 数据的方向 抓取的数据类型
参数说明:
-a 尝试将网络和广播地址转换成名称。
-c<数据包数目> 收到指定的数据包数目后,就停止进行倾倒操作。
-d 把编译过的数据包编码转换成可阅读的格式,并倾倒到标准输出。
-dd 把编译过的数据包编码转换成C语言的格式,并倾倒到标准输出。
-ddd 把编译过的数据包编码转换成十进制数字的格式,并倾倒到标准输出。
-e 在每列倾倒资料上显示连接层级的文件头。
-f 用数字显示网际网络地址。
-F<表达文件> 指定内含表达方式的文件。
-i<网络接口> 使用指定的网络截面送出数据包。
-l 使用标准输出列的缓冲区。
-n 不把主机的网络地址转换成名字。
-N 不列出域名。
-O 不将数据包编码最佳化。
-p 不让网络界面进入混杂模式。
-q 快速输出,仅列出少数的传输协议信息。
-r<数据包文件> 从指定的文件读取数据包数据。
-s<数据包大小> 设置每个数据包的大小。
-S 用绝对而非相对数值列出TCP关联数。
-t 在每列倾倒资料上不显示时间戳记。
-tt 在每列倾倒资料上显示未经格式化的时间戳记。
-T<数据包类型> 强制将表达方式所指定的数据包转译成设置的数据包类型。
-v 详细显示指令执行过程。
-vv 更详细显示指令执行过程。
-x 用十六进制字码列出数据包资料。
-w<数据包文件> 把数据包数据写入指定的文件。
tcpdump -i 网卡名
1.2.过滤规则
(1)基于ip地址/网段过滤
host选项:
tcpdump -i ens33 host 192.168.47.100
# 只抓关于主机192.168.3.100有关的流量
dst 选项 目的地址
src 选项 源地址
(2)基于端口过滤
prot 端口号
tcpdump -i ens33 port 22
(3)基于协议
协议种类:ip ,arp,icmp,tcp,udp (应用层协议不可以直接抓取)
例子:
常见参数:
-i 指定监听网络监听端口
-w 将捕获的信息保存到文件中,且不分析核打印在屏幕上
-r 读取上面存储的文件
-n 不把ip转换成域名,直接显示ip
-t 在每行的输出中,不显示时间
-tt 输出一个时间戳
时间戳(timestamp),通常是一个字符序列,唯一地标识某一刻的时间。
-ttt 每行之间的时间间隔
-tttt 详细日期
-v 产生详细的输出 (v越多越详细)
-c 指定收取数据包的数量
例:tcpdump -i ens33 -c 20 #指定抓取 20 个包后退出
-C 需要与w 配合使用 指定单个文件的大小 百万字节
-Q 过滤数据包的方向 in out inout
-q 简洁的输出
-D 显示所有可用的列表
-s 指定数据包的大小
二、DHCP
2.1.DHCP介绍
DHCP: Dynamic Host Configuration Protocol,动态主机配置协议
2.2.Linux搭建DHCP服务
①在启动dhcp服务前,需要将 “虚拟网络编辑器” 中的dhcp取消勾选,否则自己配置的dhcp不生效
[root@localhost ~]# yum install -y dhcp.x86_64
③查看配置文件所在位置
[root@localhost ~]# rpm -qc dhcp
④打开dhcp配置文件
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
⑤将模板复制到/etc/dhcp/目录下,命名为dhcpd.conf,将原dhcpd.conf覆盖掉(使用模板文件将DHCP配置文件实现覆盖)
⑥再次打开配置文件,进行dhcp地址池配置
⑦重启dhcp服务并查看运行状态
2.3.Windows中查看
①打开设置,找到以太网中更改适配器选项,再点击网卡属性
②点击IPV4协议,再将获取IP地址方式改为dhcp
③win+r键打开cdm终端,使用ipconfig查看IP地址
三.时间同步
3.1.模拟错误时间
3.2.手动同步时间
[root@localhost ~]# ntpdate ntp.aliyun.com