linux 网络基础配置

2024-01-10 10:07:47

将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 gw IP地址

删除路由表中默认的网关记录route del default gw ?IP地址

1.临时添加路由:

1.添加路由:

添加一条去往10.0.0.0/8段的路由,通过192.168.246.2转发

2.添加一条默认路由,通过192.168.246.2转发

2.删除路由:

2.添加永久路由

3.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

七、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<数据包文件> 把数据包数据写入指定的文件。

文章来源:https://blog.csdn.net/zzzxxx520369/article/details/135479958
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。