Linux--网络配置命令和配置文件--路由实战

news2025/1/16 21:40:42

文章目录

  • 基本网络配置
    • 网卡命名规范
      • 为什么要统一网卡名称
    • 修改网卡名称
      • 1.修改/etc/default/grub配置
      • 2.执行生效命令和重启
      • Ubuntu的网卡名修改
    • 配置网络接口
      • 网络接口配置
        • DHCP自动分配
        • 静态IP手动分配
      • 网卡配置文件生效方法
      • 验证文件是否生效
        • 1.验证IP
        • 2.验证网关
        • 3.验证DNS
  • VMware网卡工作模式
    • 1.桥接模式(Bridged)
    • 2.NAT模式(Network Address Translation)
    • 3.仅主机模式(Host-Only)
  • 网络配置命令
    • ifconfig
      • 启用/禁用网卡
      • 统计网卡流量
    • route
      • 路由表的构成
      • route add
      • route del
  • 实现静态路由
    • 四台主机的配置
  • 网络测试诊断工具
    • tcpdump
      • tcpdump -D
      • 面试题
    • nmap
      • nmap -sP

基本网络配置

将Linux主机接入到网络中,需要做网络相关的配置,一般包括以下内容:

1.主机名  
    CentOS7之后使用"hostnamectl set-hostname xxxx",CentOS6不支持。
  
2.IP/netmask

3.路由:默认网关 
    跨网段通信时需要使用到网关,如果通信主机都在同一个网段就不需要配置网关,但其实每个主机都需要跨网段通信,比如访问互联网。

4.DNS服务器
    主DNS服务器
    次DNS服务器
    第三个DNS服务器

网卡命名规范

为什么要统一网卡名称

CentOS6之前,网络接口使用连续号码命名: eth0、eth1等(从0递增),当增加或删除网卡时,名称可能会发生变化。
CentOS7以上版使用基于硬件,设备拓扑和设置类型命名,可以保持网卡名称的稳定,但是会导致网卡名称不连续,从而导致环境不统一不标准,不统一就不能标准化,不标准化就不能自动化。

如下截图所示,当我使用vmware新增一个网卡后,
  CentOS6的网卡名称是连续的:eth0、eth1
  CentOS8的网卡名称序号则跳跃很大:ens160、ens224

centos6 eth0/eth1
在这里插入图片描述
centos8 ens160/ens224
在这里插入图片描述

修改网卡名称

1.修改/etc/default/grub配置

在改文件的GRUB_CMDLINE_LINUX的末尾处增加以下内容

net.ifnames=0

在这里插入图片描述

2.执行生效命令和重启

执行以下命令

grub2-mkconfig -o /boot/grub2/grub.cfg

重启改虚拟主机
在这里插入图片描述
查看是否修改成功
在这里插入图片描述
ens160、ens224已经变成eth0、eth1了。

Ubuntu的网卡名修改

Ubuntu的网卡名修改和Centos修改几乎一样,只是配置生效的命令少了个2

grub-mkconfig -o /boot/grub/grub.cfg

配置网络接口

修改网卡名称之后,就得修改网络接口的各种配置了,可以理解为网卡名就是这网络接口的名称。
网络接口里包括网络接口的启用、IP 地址的分配、DHCP启用、网关和 DNS 的设置等。

网络接口配置

以下截图可以看出,网络接口的命令规范是“ifcfg-ens160”,ifcfg是interface config的缩写,短横岗后面是网卡名称(这个名称可以随意,但是在配置文件“DEVICE=”里一定要指定具体的网卡名)。

cd /etc/sysconfig/network-scripts/

在这里插入图片描述

DHCP自动分配

vim ifcfg-eth1

DEVICE=eth1
NAME=eth1
BOOTPROTO=dhcp

配置了ip地址为dhcp自动分配,VMware上设置的dhcp过期时间是30分钟,当租约时间过了一半时,设备会尝试向 DHCP 服务器发送请求以更新或续约这个 IP 地址的租约。如果 DHCP 服务器同意,租约时间将被延长。如果没有继续租约,过期之后dhcp会重新分配一个新的ip地址。可以使用“ip a”命令查看valid lft剩下的过期时间(最开始是1800秒,会不断递减)。
在这里插入图片描述
在这里插入图片描述
配置dhcp=static的主机,valid_lft 就是forever
在这里插入图片描述

静态IP手动分配

vim ifcfg-eth1

DEVICE=eth1
NAME=eth1
BOOTPROTO=static         选项为static、none、dhcp
IPADDR=192.168.10.178
PREFIX=24
GATEWAY=192.168.10.2
DNS1=114.114.114.114
DNS2=8.8.8.8
ONBOOT=yes               是否启用该网卡,默认就是yes

在这里插入图片描述

网卡配置文件生效方法

CentOS6        
  service network restart

CentOS7         
  systemctl restart network

CentOS8和Rocky  
  1.nmcli connection reload  
  2.nmcli connection up eth0

所有版本都通用的方法
  reboot    #如果机器上已经跑了很多服务了,不建议动不动就重启机器。

验证文件是否生效

1.验证IP
ip a

在这里插入图片描述

2.验证网关
route -n

在这里插入图片描述

3.验证DNS
cat /etc/resolv.conf

在这里插入图片描述

VMware网卡工作模式

1.桥接模式(Bridged)

在桥接模式下,虚拟机的网卡直接与物理网络适配器连接。这意味着虚拟机会作为网络中的独立设备存在,并可以获取与物理网络中其他设备一样的 IP 地址。这种模式适用于希望虚拟机与宿主机及网络中其他设备进行自由通信的场景。

桥接模式特点

桥接模式特点
  1.虚拟机与宿主机在同一个物理网络中,可以与其他物理设备直接通信。
  2.需要在物理网络中有足够的 IP 地址可用。
  3.使用这种模式时,虚拟机的网络流量直接通过物理网络适配器传输。

2.NAT模式(Network Address Translation)

在NAT模式下,虚拟机通过宿主机的 IP 地址和网络连接访问外部网络。虚拟机的网络流量会经过宿主机的NAT引擎,因此虚拟机的 IP 地址对外部网络是不可见的。这种模式适合需要访问外部网络但不需要虚拟机作为独立设备出现的场景。

NAT模式特点

NAT模式特点:
  1.虚拟机通过宿主机访问外部网络,虚拟机的IP地址在外部网络中不可见。
  2.对于虚拟机之间或虚拟机与宿主机的通信通常没有限制。
  3.适用于需要网络访问但无需分配额外IP地址的场景。

3.仅主机模式(Host-Only)

仅主机模式创建一个独立的虚拟网络,仅允许虚拟机与宿主机之间进行通信。在这种模式下,虚拟机无法访问外部网络,但它们可以与宿主机以及其他使用同一网络的虚拟机通信。

仅主机模式特点

仅主机模式特点特点:
  1.虚拟机只能与宿主机通信,不能直接访问外部网络。
  2.虚拟机与其他使用Host-Only网络的虚拟机可以相互通信。
  3.适用于需要隔离虚拟机与外部网络通信的场景。

网络配置命令

ifconfig

ifconfig来自于net-tools包,ifconfig命令将会淘汰被弃用,取而代之的是ip addr和ip link
在这里插入图片描述

NOTE
       This program is obsolete!  For replacement check ip addr and ip link. 
        For statistics use ip -s link.

启用/禁用网卡

我新增了一个eth2的网卡
在这里插入图片描述
禁用eth2网卡

ifconfig eth2 down

在这里插入图片描述
启用网卡

ifconfig eth2 up

在这里插入图片描述
允许一个网卡配置多个ip
在这里插入图片描述
其实eth2:1就相当于是给eth2增加了一个别名

统计网卡流量

在这里插入图片描述

route

在这里插入图片描述

路由:路径的选择
路由表:导航,地图,不仅仅是路由器上有,在任何通信的主机设备上都有

路由表的构成

字段描述
Destination目的地网络或主机的IP地址。表示数据包将要发送到的目标。
Gateway下一跳的IP地址。数据包将通过该网关转发到目的地。如果是*,表示没有网关,直接传送到目的地。
Flags路由标志,表示这条路由的状态和属性。常见标志有U(路由已启用)、G(使用网关)、H(目标是一个主机)。
Metric花费此值越小,优先级越高
Iface接口如果要到达目标网络ID,需要从本机的哪个将数据包发出(例如eth0, wlan0等)

route add

添加路由

route add [-net|-host|default] target [netmask Nm] [gw Gw] [[dev] If]

范例

#目标:192.168.1.3  网关: 172.16.0.1
route add -host 192.168.1.3 gw 172.16.0.1 dev eth0
#目标:192.168.0.0  网关:172.16.0.1
route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1 dev eth0
route add -net 192.168.0.0/24 gw 172.16.0.1 dev eth0
route add -net 192.168.8.0/24 dev eth1 metric 200
#默认路由,网关:172.16.0.1
route add -net 0.0.0.0 netmask 0.0.0.0 gw 172.16.0.1
route add -net 0.0.0.0/0 gw 172.16.0.1
route add default gw 172.16.0.1

route del

删除路由

route del [-net|-host] target [gw Gw] [netmask Nm] [[dev] If]

范例

#目标:192.168.1.3  网关:172.16.0.1
route del -host 192.168.1.3

#目标:192.168.0.0  网关:172.16.0.1
route del -net 192.168.0.0 netmask 255.255.255.0

实现静态路由

环境准备

四台主机:
  A主机:  eth0 NAT模式
  R1主机: eth0 NAT模式, eth1仅主机模式
  R2主机: eth0 桥接模式, eth1仅主机模式
  B主机:  eth0 桥接模式

在这里插入图片描述

四台主机的配置

配置A主机
ifconfig eth0 10.0.0.123/8
route add -net 10.0.0.0/8 dev eth0
route add default gw 10.0.0.200 dev eth0

配置R1路由
ifconfig eth0 10.0.0.200/8
ifconfig eth1 192.168.0.200/24
route add -net 10.0.0.0/8 dev eth0
route add -net 192.168.0.0/24 dev eth1
route add -net 172.16.0.0/16 gw 192.168.0.201 dev eth1
echo 1 > /proc/sys/net/ipv4/ip_forward          #注意:想让Linux主机充当路由器功能,需要开启ip_forward配置

配置R2路由
ifconfig eth0 172.16.0.200/16
ifconfig eth1 192.168.0.201/24
route add -net 192.168.0.0/24 dev eth1
route add -net 172.16.0.0/16 dev eth0
route add -net 10.0.0.0/8 gw 10.0.0.200 dev eth1
echo 1 > /proc/sys/net/ipv4/ip_forward          #同样开启ip_forward配置

配置B主机
ifconfig eth0 172.16.0.123/16
route add -net 172.16.0.0/16 dev eth0
route add default gw 172.16.0.200 dev eth0

网络测试诊断工具

tcpdump

网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。

常用选项:
  -nn: 禁用主机名和端口号解析,显示原始数字。
  -c <数据包数量>:捕获指定数量的包。
  -w <文件>:将捕获的数据写入文件。
  -i <网络接口>:使用指定的网络截面送出数据包。

tcpdump -D

查看网卡
在这里插入图片描述

#不指定任何参数,监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。
tcpdump

#监听特定网卡
tcpdump -i eth0

在这里插入图片描述

#监听特定主机,监听主机10.0.0.100 的通信包,注意:出、入的包都会被监听。
tcpdump host 10.0.0.100

#特定来源、目标地址的通信
tcpdump src host hostname

#特定目标地址
tcpdump dst host hostname

#如果不指定src跟dst,那么来源或者目标是hostname的通信都会被监听
tcpdump host hostname

面试题

抓包:源地址156主机ping目标152主机的包

tcpdump  -i ens160 -nn icmp and src host 192.168.10.156 and dst host 192.168.10.152

在这里插入图片描述

#特定端口
tcpdump port 3000

#监听TCP/UDP,服务器上不同服务分别用了TCP、UDP作为传输层,假如只想监听TCP的数据包
tcpdump tcp

#来源主机+端口+TCP,监听来自主机10.0.0.100在端口22上的TCP数据包
tcpdump tcp port 22 and src host 10.0.0.100

#监听特定主机之间的通信
tcpdump ip host 10.0.0.101 and 10.0.0.102

#10.0.0.101和除了10.0.0.1之外的主机之间的通信
tcpdump ip host 10.0.0.101 and ! 10.0.0.1

详细示例

tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

nmap

扫描远程主机工具,比发送ICMP报文的ping命令的功能要强大很多。

官方帮助:https://nmap.org/book/man.html

安装nmap
在这里插入图片描述

nmap -sP

扫描制定一个IP地址范围

nmap -sP 192.168.10.1-168

在这里插入图片描述
使用grep过滤出up的ip地址

nmap -sP 192.168.10.0-160 | grep "Nmap scan" | cut -d" " -f5

在这里插入图片描述
使用sed过滤出up的ip地址

nmap -sP 192.168.10.0-160 | sed -n '/^Nmap scan/s/Nmap scan report for //p'

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2062399.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深入探究神经网络的图像处理机制

深入探究神经网络的图像处理机制 前言1. 输入图像的初步处理2. 卷积层的作用3. 归一化与激活函数4. 下采样的深化5. 全局池化的影响6. 特征的融合与转换7. 上采样与图像重建8. 图像的生成与拼接9. 残差学习结语 前言 在人工智能的浪潮中&#xff0c;神经网络以其强大的数据处理…

R语言论文插图模板第7期—分组散点图

在之前的文章中&#xff0c;分享过R语言折线图的绘制模板&#xff1a; 柱状图的绘制模板&#xff1a; 本期再来分享一下散点图&#xff08;分组&#xff09;的绘制方法。 先来看一下成品效果&#xff1a; 特别提示&#xff1a;本期内容『数据代码』已上传资源群中&#xff0c;…

蓝牙资讯|苹果研究无感触控技术,可控制苹果设备

苹果正在研究让织物具有触控功能的方法&#xff0c;目标是在更多的产品上嵌入控件或检测手势&#xff0c;而不仅仅是 Apple Watch 表带或 iPhone 手机壳。他们之前就已经开始研究如何把控件融入织物之中了。 最新的专利 " 织物传感设备 " 显示苹果正进一步推进这个…

OpenLayers3, 导出图片

文章目录 一、前言二、代码实现三、总结 一、前言 本文基于OpenLayers3&#xff0c;canvas转图片实现地图导出图片的功能。 二、代码实现 <!DOCTYPE html> <html xmlns"http://www.w3.org/1999/xhtml"> <head><meta http-equiv"Content…

Stable Diffusion 3 Medium开源,创作自由一触即发!

前言 HyperAl超神经现已上线「ComfyUl Stable Diffusion3工作流在线教程」&#xff0c;已经为大家搭建好了环境&#xff0c;使用时无需输入任何命令&#xff0c;一键克隆即可启动。 该教程将Stable Diffusion3 Medium强大的文生图能力与ComfyUl直观、简洁的工作流强强结合&am…

Prettier+Vscode setting提高前端开发效率

文章目录 前言Prettier第一步&#xff1a;下载依赖&#xff08;团队合作&#xff09;或下载插件&#xff08;独立开发&#xff09;第二步&#xff1a;添加.prettierrc.json文件**以下是我使用的****配置规则** 第三步&#xff1a;添加.prettierignore文件**以下是我常用的****配…

1000人规模冗余设置

1000人规模冗余设置 步骤①&#xff1a;Vlan Trunk Eth-trunk 底层配置 #eth-trunk配置&#xff1a; sw1 &#xff1a; int eth-trunk 2 mode lacp-static trunkport gi 0/0/2 trunkport gi 0/0/3 sw2 &#xff1a; int eth-trunk 2 mode lacp-static trunkport gi 0/…

PythonStudio 控件使用常用方式(三十三)TMonthCalendar

PythonStudio是一个极强的开发Python的IDE工具&#xff0c;官网地址是&#xff1a;https://glsite.com/ &#xff0c;在官网可以下载最新版的PythonStudio&#xff0c;同时&#xff0c;在使用PythonStudio时&#xff0c;它也能及时为用户升到最新版本。它使用的是Delphi的控件&…

Mysql删除几亿条数据表中的部分数据

1、需求 老项目&#xff0c;实时数据还是用mysql去存储的&#xff0c;而且又没有定时去清理数据的程序。目前这些实时数据只需保留近半年的即可。 其他几张实时表数据量没有这么夸张。 我随即用 delete from table_name where id < 39000000 limit 10000 但是几亿条记录…

[DL]深度学习_扩散模型

扩散模型原理 深入浅出扩散模型 一、概念简介 1、Denoising Diffusion Probalistic Models&#xff0c;DDPM 1.1 扩散模型运行原理 首先sample一个都是噪声的图片向量&#xff0c;这个向量的shape和要生成的图像大小相同。通过Denoise过程来一步一步有规律的滤去噪声。Den…

【第69课】Java安全JWT攻防Swagger自动化算法签名密匙Druid未授权

免责声明 本文发布的工具和脚本&#xff0c;仅用作测试和学习研究&#xff0c;禁止用于商业用途&#xff0c;不能保证其合法性&#xff0c;准确性&#xff0c;完整性和有效性&#xff0c;请根据情况自行判断。 如果任何单位或个人认为该项目的脚本可能涉嫌侵犯其权利&#xff0…

【逆向】打开页面403,加密值如何有其它页面内正则提取并更新

一、问题出现 # import requests # url https://www.regulations.gov/search?sortBypostedDate&sortDirectiondesc # response requests.get(url) # print(response.text) 正常页面打开没有自己看到的内容。 F12找到新的地址 import requests# headers { # accep…

使用VRoid Studio二次元建模,创建专属于自己的二次元卡通人物模型,创建完全免费开源且属于自己VRM模型

最终效果 文章目录 最终效果什么是VRoid Studio官网地址下载安装VRoid Studio1、可以去它的官网下载2、steam安装 创建模型配置参数 导出模型使用别人的VRM模型这里我分享几个不错的模型&#xff0c;大家可以自行去下载 完结 什么是VRoid Studio 如果你玩过能捏脸的游戏你就能…

免费体验!快速生成超逼真真人美图的Stable Diffusion模型!

前言 所有的AI设计工具&#xff0c;模型和插件&#xff0c;都已经整理好了&#xff0c;&#x1f447;获取~ 环境安装 1、安装Python 下载地址&#xff1a;https://www.python.org/ftp/python/3.10.6/python-3.10.6-amd64.exe。 备注&#xff1a;把安装目录加入环境变量&…

AI打造独居女性生活漫画Vlog,这份涨粉秘籍不容错过!

在快节奏与高压的现代生活中&#xff0c;独居女性的日常成为了许多人向往的一片宁静之地。她们以独特的方式享受着自我成长与生活的美好&#xff0c;而这些细微却动人的瞬间&#xff0c;正是我们创作爆款Vlog的灵感源泉。 在这个数字化时代&#xff0c;我们用科技捕捉并重新诠释…

一些常见的测试类型及介绍

在刚开始学习软件测试的时候&#xff0c;总是看到很多种测试类型&#xff0c;除了下图软件测试分类外&#xff0c;还有一些常见的测试类型名称。 1.接口测试 接口测试用于检测外部系统与所测系统之间以及内部各个子系统之间的交互点&#xff0c;定义特定的交互点&#xff0c;通…

Ubuntu下载安装教程|Ubuntu最新长期支持(LTS)版本24.04 LTS下载安装

安装Ubuntu Ubuntu最新长期支持(LTS)版本24.04 LTS Ubuntu 24.04 LTS | 概览 Ubuntu长期支持(LTS)版本&#xff0c;LTS意为“长期支持”&#xff0c;一般为5年。LTS版本将提供免费安全和维护更新至 2029年4月。 Ubuntu 24.04 LTS&#xff08;代号“Noble Numbat”&#xff0c;…

【EI检索稳定】2024年第四届数字化社会与智能系统国际学术会议(DSInS 2024)

由悉尼科技大学和西南交通大学联合主办&#xff0c;四川大学、中南大学社会计算研究中心、西南财经大学、武汉理工大学协办的2024年第四届数字化社会与智能系统国际学术会议将于2024年11月22-24日在中国郑州举行。会议主题主要聚焦智能系统在数字化社会中的相关技术和应用发展。…

RM电控RTOS

OS即&#xff08;operating system&#xff09;操作系统&#xff0c;比如我们常用的windows系统&#xff0c;mac系统&#xff0c;android系统&#xff0c;ios系统&#xff0c;linux系统等&#xff0c;都属于操作系统。操作系统的本质是一个特殊的软件&#xff0c;它直接管理硬件…

一文彻底搞懂Transformer - FFNN(前馈神经网络)

Transformer 神经网络&#xff1a; 神经网络&#xff08;Neural Networks&#xff09;是一种模仿生物神经网络的结构和功能的数学或计算模型。它由大量的人工神经元&#xff08;也称为节点或处理单元&#xff09;相互连接而成&#xff0c;这些神经元之间通过带有权重的连接进行…