网络基础
-
常见的网络命令
-
基本网络配置
-
网络故障排除
-
常见的网络协议
常用网络命令
ping
ping的基本用法为:ping <IP地址或域名>
ping www.lcucloud.com
ping www.lcucloud.com 80
常见参数
-c | ping的次数 |
-i | ping的间隔时间 |
-s | 指定回显请求的数据包大小,默认56字节 |
-t | 指定数据包的生存时间 |
-I | 指定网卡来ping |
举例:
ping -c4 -i 0.2 www.lcycloud.com
ping -I ens32 www.lcycloud.com 80
traceroute
需要安装:yum -y install traceroute
traceroute用来收集目的地主机中跳转的路由器,发送和接收响应的时间。通俗来说就是一个导航,会显示每个中间地的信息,最终到达目的地IP地址或域名。
规范用法:
traceroute -n -T -p 80 www.lcycloud.com
netstat
一个查看当前所有网络状态的工具,包括TCP和UDP连接。
最常用的命令:netstat -antup,netstat -ant
列名 | 描述 |
---|---|
Proto | 网络协议(例如TCP或UDP) |
Recv-Q | 等待接收的数据大小 |
Send-Q | 等待发送的数据大小 |
Local Address | 本地IP地址和端口号 |
Foreign Address | 外部IP地址和端口号 |
State | 连接状态 |
PID/Program name | 程序名和PID |
ifconfig
配置和显示网络接口参数,MAC地址,子网掩码等信息
参数 | 作用 |
---|---|
-a | 显示所有接口,包括未激活的 |
-s | 显示摘要信息 |
up | 激活接口 |
down | 关闭接口 |
inet addr | 设置或显示IPv4地址 |
netmask | 设置或显示子网掩码 |
hw ether | 设置或显示MAC地址 |
举例说明
ifconfig ens32 down,关闭网卡
ifconfig ens32 up,激活网卡
ifconfig ens33 hw ether 00:0c:29:88:88:88,修改网卡MAC
ifconfig eth0 192.168.1.2 netmask 255.255.255.0 up,激活一块新的临时网卡
nslookup
一个用于查询DNS(域名系统)的命令行工具
举例:
nslookup www.lcycloud.com 查询DNS
nslookup -query=A www.lcycloud.com 查询A类型的NDS
nslookup -query=MX www.lcycloud.com 查询MX类型DNS
route
一个管理路由表的工具,增删改查
参数
参数 | 含义 |
---|---|
-n | 使用数字形式显示路由表项 |
-v | 显示详细信息 |
add | 添加路由表项 |
del | 删除路由表项 |
常用举例:
route -n
route -v
route add -net 192.168.1.0 netmask 255.255.255.0 dev ens33
添加一块路由表
route del -net 192.168.1.0 netmask 255.255.255.0 dev ens33
删除
dig
查询DNS是否正确,以及一些信息的一个工具
常用命令:
dig www.lcycloud.com 查看DNS的基本信息
dig -t A www.lcycloud.com 查看A类型的信息
dig -t MX www.lcycloud.com 查看MX类型的信息
dig @8.8.8.8 www.lcycloud.com 指定DNS进行查询
tcpdump
一个网络协议分析工具,用于抓取网络数据包。
yum -y install tcpdump
常用参数:
参数 | 含义 |
---|---|
-i | 指定抓取数据包的网络接口,如eth0 |
-w | 将抓包结果保存到指定的文件中 |
-A | 以ASCII码的形式显示数据包,相当于-Xvv |
举例:
tcpdump -i eth0 src 10.0.0.1
在eth0接口上抓取所有来自IP地址为10.0.0.1的流量
tcpdump -i eth0 dst 10.0.0.1
在eth0接口上抓取所有发往IP地址为10.0.0.1的流量
tcpdump -i eth0 -w tcpdump_output.pcap tcp port 80
在eth0接口上抓取所有目标端口为80
的TCP流量,并写入文件
lsof
列出系统中所有打开的文件和进程的相关信息
命令 | 说明 |
---|---|
lsof -i:80 | 列出占用80端口的进程信息 |
lsof | grep deleted | 列出所有被删除但仍然被进程占用的文件 |
lsof -u root | 列出所有由root用户运行的进程信息 |
lsof /var/log/messages | 列出打开/var/log/messages文件的所有进程 |
mtr
实时监控网络信息,一个网络诊断工具
参数 | 含义 |
---|---|
-c | 指定发送数据包的数量 |
-i | 指定发送数据包的间隔时间 |
-n | 不对域名进行解析 |
-r | 不进行DNS解析 |
-s | 指定发送数据包的大小 |
-t | 持续显示路由跟踪信息 |
基本网络配置
在Linux中,常见了网络接口类型有:
类型 | 描述 |
---|---|
eth0 | 有线网络接口,连接互联网与局域网 |
wlan0 | 无线网络接口,连接无限局域网与互联网 |
lo | 回环网络接口,本地回环测试 |
virbr0 | 虚拟网桥,虚拟机直接的通讯 |
docker0 | docker容器的接口 |
ens33 | 有线网络接口,连接互联网与局域网 |
举例,配置centos7网络
vim /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
#网络状态,动态为dhcp
BOOTPROTO="none"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
#ip地址
IPADDR=10.0.0.10
#网络掩码
NETMASK=255.255.255.0
#网关
GATEWAY=10.0.0.1
#DNS域名解析地址
DNS1=8.8.8.8
DNS2=114.114.114.114
常见的网络故障原因
-
连接不上网络。网卡,网线,网关故障。
-
无法访问网络。路由表故障,防火墙拦截。
-
网速慢。带管低,网络堵塞。
-
DNS域名故障。DNS配置错误,DNS服务器故障。
-
网络安全。病毒,攻击。
解决方法如下:
-
排查网线,路由器,交换机。
-
ping网络测试。
-
查看掩码,网关,DNS域名解析,路由表。
-
查看防火墙。
-
如还是不通,使用工具排查。
常见网络协议
协议 | 描述 | 端口号 |
---|---|---|
HTTP | 超文本传输协议,web端与服务器之间的通信 | 80 |
HTTPS | 安全超文本传输协议,通过TLS/SSL保护数据传输 | 443 |
SSH | 安全壳协议,安全远程连接和文件传输 | 22 |
telnet | 远程终端协议,远程访问主机 | 23 |
FTP | 文件传输协议,远程文件上传和下载 | 20.21 |
DNS | 域名解析系统,将域名解析成IP地址 | 53 UDP |
SMTP | 简单邮件传输协议,电子邮件发送 | 25 |
RDP | 远程桌面协议,远程控制win计算机 | 3389 |