目录
1. ifconfig 网卡名称——显示具体网卡的详细信息编辑
3. ifconfig -a ——显示所有网卡包括没有启动的网卡编辑
4. ifconfig 网络接口 IP地址[/子网掩码长度]——临时设置网卡地址
1. ss、netstat 这两条命令都是用于查看网络环境情况
2. tcpdump -i ens33 指定查看ens33 网卡
3.tcpdump不指定任何参数,监听第一块网卡上经过的数据包。
将Linux主机接入到网络,需要配置网络相关设置一般包括如下内容:
主机名
iP/netmask (ip地址,网关)
路由:默认网关
网络连接状态
DNS服务器 (主DNS服务器 次DNS服务器 第三个DNS服务器)
一、查看linux基础的网络设置
网关 | route -n |
IP地址 | ifconfig 或 ip a |
DNS服务器 | cat /etc/resolv.conf |
主机名 | hostname |
路由 | route -n |
网络连接状态 | ss 或 netstat |
域名解析 | nslookup host |
ifconfig命令———查看网络接口信息
1.网卡信息介绍
新加网卡
1. ifconfig 网卡名称——显示具体网卡的详细信息
网卡名称详解:
eth0
ens33:第一块以太网卡的名称详解:
“ens33”中的“en”是“EtherNet”的缩写,表示网卡 以太网(局域网中的一种) 互联网
类型为以太网,“s”表示热插拔插槽上的设备(hot-plug Slot),数字“33”表示插槽 编号
2.ifconfig 显示活动(开启)的网卡
3. ifconfig -a ——显示所有网卡包括没有启动的网卡
4. ifconfig 网络接口 IP地址[/子网掩码长度]——临时设置网卡地址
5. ifconfig 网卡名称 :数字 地址/子网掩码——新建虚拟网卡
2.网卡名称修改
1. 临时修改网卡名称
ip link set ens36 down =ifconfig ens36 down #先将网卡down掉 ip link set ens36 name abc #然后改名 ip link set abc up #最后再启动网卡
2.永久修改网卡名称,写入文件
centos6之前的命名方式都是以网络接口使用连续号码命名:如eth0、eth1等,当增加或者删除网卡时,名称可能会发生变化
3.网卡修改配置
1.单个网卡修改
2.双网卡配置
首先添加一块网卡
3.网卡绑定bond (参考文章标题六哈)
二、hostname 查看或设置当前主机名
1.临时修改主机名
2.永久修改主机名
方法1:修改配置文件
方法2:
三、配置路由
route 查看或设置主机中路由表信息
添加 指定网段的路由记录route add -net 网段地址 gw IP地址
删除指定网段的路由记录route del -net网段地址
向路由表中添加默认网关记录route add default gwIP地址
删除路由表中默认的网关记录route del default gw IP地址
1.临时添加路由:
添加一条去往10.0.0.0/8段的路由,通过192.168.246.2转发
2.添加一条默认路由,通过192.168.246.2转发
2.删除路由:
3.添加永久路由
4.traceroute 路由追踪
使用traceroute命令,可以显示数据包从本地主机到目标主机经过的路由路径。
用于测试当前主机到目的主机之间经过的网络节点,基本格式:tracerout ip地址或域名
四、检查网络环境,检查网络连接状态
1. ss、netstat 这两条命令都是用于查看网络环境情况
ss:更靠近内核
ss -natp n :数字 a:详细 t:tcp u:udp p:进程
netstat:靠近用户,它要去遍历 文件查看状态
ss 的优势在于它能够显示更多更详细的有关 TCP 和UDP连接状态的信息,而且比 netstat 更快速更高效,ss快的秘诀在于,它利用到了TCP协议栈中tcp_diag。tcp_diag是一个用于分析统计的模块,可以获得Linux 内核中第一手的信息,这就确保了ss的快捷高效 ss命令是Linux CentOS 7中iproute软件包的一部分,默认已经安装。
2. ping 测试网络连通性 ICMP 协议
格式: ping [选项] 目标主机
五、nslookup域名解析
nslookup是一个命令行工具,用于查询DNS(域名系统)服务器以获取关于主机名或IP地址的信息。它主要用于诊断网络问题、验证DNS记录的正确性以及了解域名解析的过程。
格式:nslook 域名
dig 可以显示出更多详细信息
六、多网卡绑定 bond
bond(绑定)是指将两个或多个物理网卡虚拟化为一个逻辑接口的过程,以实现冗余、负载均衡或增加带宽。这种技术通常被称为“网络接口绑定”或“链路聚合
将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过 bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址
多网卡绑定
方法一:
nmcli实现bonding #创建新连接static ,指定静态IP,不自动连接 nmcti con add con-name static ifname eth0 autoconnect no type Ethernet ipv4.addresses 172.25.X.10/24 ipv4.gateway 172.25.X.254 nmcli connection modify ens33 ipv4.addresses 192.168.91.100/2 nmcli connection up ens33 #添加bonding接口 nmcli con add type bond con-name mybond0 ifname bond0 mode active-backup ipv4.method manual ipv4.addresses 192.168.91.123/24 #添加从属接口 nmcli con add type bond-slave ifname ens33 master bond0 nmcli con add type bond-slave ifname ens36 master bond0 #注:如无为从属接口提供连接名,则该名称是接口名称加类型构成 #要启动绑定,则必须首先启动从属接口 nmcli con up bond-slave-ens33 nmcli con up bond-slave-ens36 #启动绑定 nmcli con up mybond0
方法二:
创建bonding设备的配置文件 /etc/sysconfig/network-scripts/ifcfg-bond0 NAME=bond0 TYPE=bond DEVICE=bond0 BOOTPROTO=none IPADDR=10.0.0.100 PREFIX=8 BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1" #miimon指定链路监测时间间隔。如果miimon=100,那么系统每100ms 监测一次链路连接状态,如果有一条线路不通就转入另一条线路 /etc/sysconfig/network-scripts/ifcfg-ens33 NAME=eth0 DEVICE=eth0 BOOTPROTO=none MASTER=bond0 SLAVE=yes ONBOOT=yes /etc/sysconfig/network-scripts/ifcfg-ens36 NAME=eth1 DEVICE=eth1 BOOTPROTO=none MASTER=bond0 SLAVE=yes ONBOOT=yes ################################################################# vim ifcfg-bond0 NAME=bond0 TYPE=bond DEVICE=bond0 BOOTPROTO=none IPADDR=192.168.91.22 NETMASK=255.255.255.0 GATEWAY=192.168.91.2 BONDING_OPTS="mode=1 miimon=100 fail_over_mac=1" vim ifcfg-ens33 BOOTPROTO=static NAME=ens33 DEVICE=ens33 ONBOOT=yes MASTER=bond0 SLAVE=yes vim ifcfg-ens36 NAME=ens36 DEVICE=bond0 BOOTPROTO=none MASTER=bond0 SLAVE=yes PNBOOT=yes [root@localhost network-scripts]#cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011) Bonding Mode: fault-tolerance (active-backup) (fail_over_mac active) Primary Slave: None Currently Active Slave: ens33 MII Status: up MII Polling Interval (ms): 100 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: ens33 MII Status: up Speed: 1000 Mbps Duplex: full Link Failure Count: 0 Permanent HW addr: 00:0c:29:fe:e5:bf Slave queue ID: 0 查看bond0状态: cat /proc/net/bonding/bond0 删除bond0 ifconfig bond0 down rmmod bonding
用第二台虚拟机192.168.246.8 ping下bond0地址
为了方便看我们可以再连接起来,要不就去虚拟机里操作,正常xhell应该连不上哦
查看bind0状态
断开ens33网卡,记得重启下网卡服务 systemctl restart network
(也可以打命令ifconfig ens33 down),用第二台虚拟机192.168.246.8去ping
七、tcpdump
网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。 tcpdump命令, 是一个强大的网络协议分析器,它主要用于监控和捕获网络流量数据包,并能够以易于阅读的格式显示这些信息。
1. tcpdump -D 查看网卡
2. tcpdump -i ens33 指定查看ens33 网卡
3.tcpdump不指定任何参数,监听第一块网卡上经过的数据包。
主机上可能有不止一块网卡,所以经常需要指定网卡。
tcpdump src host hostname
#特定来源tcpdump dst host hostname
#特定目标地址tcpdump host hostname
#如果不指定src跟dst,那么来源或者目标是hostname的通信都会被监听
面试题:
tcpdump -nn -i ens33 icmp and src host 192.168.246.7 and dst host 192.168.246.8
抓192.168.246.7发给192.168.246.8的 icmp 包 条件之间要加 and
tcpdump [-adeflnNOpqStvx][-c<数据包数目>][-dd][-ddd][-F<表达文件>][-i<网络界面>][-r< 数据包文件>][-s<数据包大小>][-tt][-T<数据包类型>][-vv][-w<数据包文件>][输出数据栏位] 参数说明: -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<数据包文件> 把数据包数据写入指定的文件。