linux服务器网络配置

news2025/4/25 21:48:14

目录

  • 1、centos的网络配置
    • 1.1 静态Ipv4配置方法:
    • 1.2 动态Ipv4的设置方法
    • 1.3 常见ping不通网关的原因:
    • 1.4 查看操作系统版本
    • 1.5 查看一台服务器的所有服务
    • 1.6 猜测所在房间网关ip
  • 2、 Ubuntu的网络配置(静态ipv4)
  • 3、2024.6.14 解决ping不通网关

1、centos的网络配置

1.1 静态Ipv4配置方法:

首先/etc/sysconfig/network-scripts/找到网卡 ifcfg-你的网卡名字 (eg. ifcfg-ens192

然后 vi ifcfg-ens192进去修改网卡配置,这里采用静态IP方式(动态Ip更简单),具体修改选项如下:

  • BOOTPROTO=static
  • ONBOOT=yes
  • IPADDR=10.0.21.215
  • NETMASK=255.255.255.0
  • GATEWAY=10.0.21.254
  • DNS1=8.8.8.8

再去修改/etc/sysconfig/network里面的内容

  • NETWORKING=yes
  • GATEWAY=10.0.21.254(不同房间的网关不一样)

最后重启网络服务即可service network restart

然后再试一试ping得通自身/网关/百度不。

配置文件举例如下:

TYPE=Ethernet 
BOOTPROTO=static  #将原来的dhcp改为static
DEFROUTE=yes

#这里改为eth0 或者 ens33 比如:NAME=ens33
NAME=ens33 

#这个不知道 就可以不用设置
#UUID="69b5a74b-c46f-48e0-a2a5-959721dff85e"
#UUID=<UUID>  
DEVICE=ens33  #这里改为eth0 或者 ens33 比如:DEVICE=ens33  可以不用这行
ONBOOT=yes

IPADDR=192.168.1.100      # 你要设置的固定 IP 地址
NETMASK=255.255.255.0     # 子网掩码
GATEWAY=192.168.1.1       # 网关 IP 地址
DNS1=8.8.8.8              # 首选 DNS 服务器
DNS2=8.8.4.4              # 备选 DNS 服务器

1.2 动态Ipv4的设置方法

TYPE=Ethernet
BOOTPROTO=dhcp #关键
DEFROUTE=yes 
NAME=ens33 
DEVICE=ens33  #这里改为eth0 或者 ens33 比如:DEVICE=ens33  可以不用这行
ONBOOT=yes #关键                                                       

1.3 常见ping不通网关的原因:

1、服务器的实际物理网口位置标号 和 服务器操作系统 /etc/sysconfig/network-scripts/的文件名不匹配(如物理网口eth0对应的是ifcfg-eth4

解决办法:可以通过ethtool -p eth0 查看某个网口是否连接上(闪灯)。

貌似ip a命令显示结果中的UPDOWN/etc/sysconfig/network-scripts/配置文件里面的ONBOOT的值

2、配置的eth0和网桥br0绑定了起来(绑定了起来后,配置了eth0ip没用)

检查办法:bridge link查看

解决办法:本文下面

3、如果报错no link present Check cable,那么可以在配置文件的最后一项加上 check_link_down(){ return 1; }

  • 例如:

    ONBOOT=yes #其他的改成no,这样service network restart 更快些 
    NM_CONTROLLED=yes
    BOOTPROTO=dhcp
    check_link_down(){
    	return 1;
    }
    
  • 参考:《CentOS 6.5 自动获取IP设置》

4、其他参考:《虚拟机ping不通网关之大坑》

1.4 查看操作系统版本

cat /etc/issue (适用所有发行版本) #如果是防火墙的话,那么可能会出现 CAPSHEAF_FIREWALL

cat /proc/version

uname -a

1.5 查看一台服务器的所有服务

netstat -nl

1.6 猜测所在房间网关ip

linux服务器是traceroute -d 10.0.22.2

windows主机是tracert -d 10.0.22.2

-d选项:不将IP地址解析成主机名,因此路由追踪速度快很多。
-h选项:说明路由的最大跳数,默认是30跳。
-w选项:说明等待每一个ICMP响应报文的时间,默认4s,如果接收超时,则显示星号*。跳数和等待时间,使用默认值即可,所以平时一般都不需要添加这两个选项。
-j选项:说明ICMP报文要使用IP头中的松散源路由选项,后面是经过的中间节点的地址或主机名字,最多9个,各个中间节点用空格隔开。

结果:

C:\Users\180>tracert -d 10.0.22.2

通过最多 30 个跃点跟踪到 10.0.22.2 的路由

  1     7 ms     3 ms     3 ms  10.0.21.254 #这个就是网关
  2     1 ms     1 ms    <1 毫秒 10.0.22.2

跟踪完成。

参考网址

2、 Ubuntu的网络配置(静态ipv4)

重要参考:《运维系列(亲测有效):如何在 Ubuntu 22.04 上配置静态IP地址?》

$ ip link # Step1. 检查您的网络接口名称

$ sudo vim /etc/netplan/00-installer-config.yaml #Step2.编辑网络配置文件 (可以先备份一份)

# This is the network config written by 'subiquity' Step3. 配置静态IP地址
network:
  ethernets:
    ens160:
      dhcp4: false
      addresses: [10.24.0.83/16]  
      gateway4: 10.24.254.254 
  version: 2

$ sudo netplan apply # Step4. 重启服务。类似centos的service network restart

$ ip address show ens160 # 查看ip地址,万一没有ifconfig命令的话

问题1:ping不通百度

参考:《Ubuntu 20.04 server不能ping,提示“Temporary failure in name resolution”的解决方法》

最终解决:修改/etc/netplan/00-installer-config.yaml,添加上域名

# This is the network config written by 'subiquity'
network:
  ethernets:
    ens160:
      dhcp4: false
      addresses: [10.24.0.83/16]
      gateway4: 10.24.254.254
      nameservers:
        addresses: [114.114.114.114,8.8.8.8] #注意‘:’和‘[’之间有个空格
  version: 2

问题2:netplan apply时报错Error in network definition: expected mapping (check indentation) addresses:[114.114.114.114, 8.8.8.8]

参考:《Ubuntu18.04配置静态ip遇到的报错》

最终解决:address:[空格][144…(冒号后面应该有个空格)

在ubuntu安装界面中配置ip地址:

在这里插入图片描述

subnet:确实是子网掩码,对应我们的,就是10.24.0.0/16

问题3:没有ping命令

重要参考:Linux下安装ping命令

sudo apt update
sudo apt install -y iputils-ping # ubuntu

sudo yum install -y iputils # centos

安装不起,可能是没有连外网。

问题4:没有ifconfig命令

  • ip a命令查看ip
  • 安装(重要参考)
sudo apt install net-tools # ubuntu安装

3、2024.6.14 解决ping不通网关

最近配置硬件防火墙,系统是centos系统。按照之前的配置方法进行配置,配置了eth0的静态ip/动态ip,虽然ping得通自身,但是ping不通网关。(ping得通原来的br0的ip地址)

查阅了些参考资料,发现原因在于br0br0eth0绑定在了一起,导致配置了eth0的ip还是没用。

解决办法1:配置其他没和br0绑定的网卡,比如说配置eth1的ip地址。

解决办法2:配置br0的ip地址(配置成eth0的ip地址)。下面有具体的图片

解决办法3:取消eth0br0的绑定,配置eth0的ip地址

接下来就是学习这篇重要参考:《Linux虚拟网络设备之bridge(桥)》

1、ping -c 1 -I veth0 192.168.3.102这句命令是什么意思?

这个命令是使用ping工具来检测网络连接的。下面是对命令各部分的解释:

  • ping:这是一个常用的网络诊断工具,用于检查与目标主机的网络连接是否正常。
  • -c 1:这个选项指定了ping命令应该发送的echo请求(即ICMP请求)的数量。在这里,1表示只发送一个请求。
  • -I veth0:这个选项指定了用于发送echo请求的网络接口。veth0是一个虚拟网络接口,通常在Linux系统中用于容器或虚拟化环境。这个选项意味着echo请求将通过veth0接口发送。
  • 192.168.3.102:这是目标主机的IP地址。ping命令将向这个IP地址发送echo请求。

综上所述,ping -c 1 -I veth0 192.168.3.102 这句命令的意思是,使用veth0网络接口向IP地址为192.168.3.102的目标主机发送一个echo请求,并等待回应。这个命令通常用于测试网络接口是否能够成功发送和接收数据包。如果目标主机响应,将显示回复的时间和相关的网络统计信息;如果目标主机不响应,可能会显示超时的错误信息。

2、sudo tcpdump -n -i veth1这句命令是什么意思?

  • sudo:这个前缀表示以超级用户(root)权限执行后面的命令。tcpdump通常需要root权限来访问网络接口并进行数据包捕获。
  • tcpdump:这是一个强大的网络分析工具,用于捕获和显示通过网络接口传输的数据包。
  • -n:这个选项告诉tcpdump不要将网络地址解析为主机名和端口号,而是以数字形式显示IP地址和端口号。这样可以加快捕获过程,并减少输出的冗余信息。
  • -i veth1:这个选项指定了tcpdump应该监听的网络接口。veth1是一个虚拟网络接口,通常在Linux系统中用于容器或虚拟化环境。这个选项意味着tcpdump将监听veth1接口上的数据包。

综上所述,sudo tcpdump -n -i veth1 这句命令的意思是,以root权限使用tcpdump工具来捕获通过veth1网络接口传输的所有数据包,并以数字形式显示这些数据包的源和目标IP地址以及端口号。这个命令常用于网络调试、监控和分析。

3、关于对网桥的理解:

  • bridge是一个虚拟网络设备,所以具有网络设备的特征,可以配置IP、MAC地址等;其次,bridge是一个虚拟交换机,和物理交换机有类似的功能。

  • br0和veth0相连之后,相当于bridge在veth0和协议栈之间插了一脚,将veth0本来要转发给协议栈的数据给拦截了,全部转发给bridge了,同时bridge也可以向veth0发数据。(谁和br0连上,谁的数据就要发给br0而不再发给协议栈)

  • veth0收到(veth1的)应答包后没有给协议栈,而是给了br0,于是协议栈得不到veth1的mac地址,从而通信失败。

4、和网桥相关的命令:

dev@debian:~$ sudo ip link add name br0 type bridge #创建1个网桥

dev@debian:~$ sudo ip link set br0 up #开启所创建的网桥

dev@debian:~$ sudo ip link set dev veth0 master br0 # 将veth0连上br0

dev@debian:~$ sudo bridge link #查看br0上连接了哪些设备
6: veth0 state UP : <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 master br0 state forwarding priority 32 cost 2

dev@debian:~$ sudo ip link add veth0 type veth peer name veth1 # 创建一对veth设备: veth0和veth1

dev@debian:~$ sudo ip addr add 192.168.3.101/24 dev veth0 # 给Device veth0 配置上IP
dev@debian:~$ sudo ip addr add 192.168.3.102/24 dev veth1 # 给Device veth1 配置上IP
dev@debian:~$ sudo ip link set veth0 up # 开启虚拟网卡veth0
dev@debian:~$ sudo ip link set veth1 up # 开启虚拟网卡veth1

dev@debian:~$ sudo ip addr del 192.168.3.101/24 dev veth0 #删除Device veth1的上ip
dev@debian:~$ sudo ip addr add 192.168.3.101/24 dev br0 #给网桥br0配置上ip

ip link命令,断开与eth0的连接:

ip link set veth0 nomaster br0

5、一个ping命令,会走哪些步骤? (协议栈、物理网卡、屏幕(和物理网卡对应)、外在设备)的关系?

参考:《网络是怎样连接的(二) – 协议栈与网卡是如何工作的》

  • 发送时的数据包:应用程序 -> 协议栈 -> 网卡
  • 接收时的数据包:网卡 -> 协议栈 -> 应用程序

6、核心问题:如果我不换网口,那么应该怎么配通网络?

  • 应该配置br0的ip(把eth1的网络ip,配置到br0上)

    • eth0不配置ip,但是ONBOOT要设置为on

      在这里插入图片描述

    • br0的配置,配置成eth0的配置

      • 通过vi ifcfg-br0配置
        在这里插入图片描述
      • 或者通过ip addr add 10.0.23.82/24 dev br0配置

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

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

相关文章

《精通ChatGPT:从入门到大师的Prompt指南》第6章:日常对话与问答

第6章&#xff1a;日常对话与问答 6.1 提问技巧 提问技巧在使用ChatGPT时至关重要&#xff0c;因为高质量的提问能够得到更为准确和有价值的回答。以下是一些关键技巧和方法&#xff0c;帮助你掌握提问的艺术。 1. 明确问题目标 在提问之前&#xff0c;首先要明确你希望从C…

干G货,性能测试基本方法和原则,

一、性能测试关键点 评估性能指标——线程tps&#xff08;可架构给&#xff09; 吞吐量qps&#xff08;可架构给&#xff09; 错误率&#xff08;可架构给&#xff09; 平均响应时间&#xff08;可架构给&#xff09;模拟线上数据量了解接口有没有缓存&#xff0c;有缓存的需要…

同三维T80005EHS-4K60 4K60 HDMI/SDI编码器

1路4K60 HDMI或12G SDI输入&#xff0c;2路3.5MM音频输入&#xff0c;对应HDMI或SDI&#xff0c;1个USB口和1个SD卡槽&#xff0c;可录像到U盘/移动硬盘/SSD硬盘/TF卡 产品简介&#xff1a; 同三维T80005EHS-4K60 4K60HDMI/SDI H.265编码器采用最新高效H.265高清数字视频压缩…

CV预测:快速使用ResNet深度残差神经网络并创建自己的训练集

AI预测相关目录 AI预测流程&#xff0c;包括ETL、算法策略、算法模型、模型评估、可视化等相关内容 最好有基础的python算法预测经验 EEMD策略及踩坑VMD-CNN-LSTM时序预测对双向LSTM等模型添加自注意力机制K折叠交叉验证optuna超参数优化框架多任务学习-模型融合策略Transform…

基于hispark_taurus开发板示例学习OpenHarmony编译构建系统(2)

3、hispark_taurus产品解决方案-Vendor 产品解决方案为基于开发板的完整产品&#xff0c;主要包含产品对OS的适配、组件拼装配置、启动配置和文件系统配置等。产品解决方案的源码路径规则为&#xff1a;vendor/{产品解决方案厂商}/{产品名称}_。_产品解决方案也是一个特殊的组…

Sentence Transformers x SwanLab:可视化Embedding训练

Sentence Transformers(又名SBERT)是访问、使用和训练文本和图像嵌入&#xff08;Embedding&#xff09;模型的Python库。 你可以使用Sentence Transformers快速进行模型训练&#xff0c;同时使用SwanLab进行实验跟踪与可视化。 1. 引入SwanLabCallback from swanlab.integra…

【Hachker News】如果你不需要钱,你会干什么?

Hachker News上的一个问题&#xff0c;标题是“如果你不需要钱&#xff0c;你会做什么&#xff1f;” 回答摘要 问题链接&#xff1a;What would you spend your time working on if you didn’t need money? A1&#xff1a; 我会把时间投入到城市周围的农村地区&#xff0c…

快慢指针在字符串中的应用-443. 压缩字符串

题目链接及描述 443. 压缩字符串 - 力扣&#xff08;LeetCode&#xff09; 题目分析 这个题目总体不算太难&#xff0c;如果之前接触过双指针&#xff08;快慢指针&#xff09;的话&#xff0c;比较好做。题目可以理解为计算数组中对应各个连续字符出现的次数&#xff0c;并将…

工控机与普通电脑的区别对于工业自动化应用至关重要

商用计算机和工业计算机之间的相似之处可能多于差异之处。工业电脑利用了消费技术领域的许多进步&#xff0c;但增加了工业应用所必需的软件、编程、确定性和连接性。 专业人士表示&#xff1a;“从增加内存到摩尔定律所描述的处理能力的指数级增长&#xff0c;工业控制必将受…

【iOS】KVO相关总结

目录 1. 什么是KVO&#xff1f;2. KVO的基本使用3. KVO的进阶使用observationInfo属性context 的使用KVO触发监听方法的方式自动触发手动触发 KVO新旧值相等时不触发KVO的从属关系一对一关系一对多关系 4. KVO使用注意5. KVO本质原理分析伪代码保留伪代码下的类并编译运行对比添…

QT信号与槽/窗口组件优化

使用手动连接&#xff0c;将登录框中的取消按钮使用第二中连接方式&#xff0c;右击转到槽&#xff0c;在该槽函数中&#xff0c;调用关闭函数 将登录按钮使用qt4版本的连接到自定义的槽函数中&#xff0c;在槽函数中判断u界面上输入的账号是否为"admin"&#xff0c;…

前缀和算法:算法秘籍下的数据预言家

✨✨✨学习的道路很枯燥&#xff0c;希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一. 前缀和算法的介绍 二、前缀和例题 2.1 【模版】前缀和 2.2 【模板】二维前缀和 2.3 寻找数组的中间下标 2.4 除自身以外数组的乘积 2.5 和为k的子数组 2.6 和可被k整除的子数组 2.7 …

如何将NextJs中的File docx保存到Prisma ORM

背景/引言 在现代 Web 开发中&#xff0c;Next.js 是一个备受欢迎的 React 框架&#xff0c;它具有许多优点&#xff0c;如&#xff1a; 服务器端渲染 (SSR)&#xff1a;Next.js 支持服务器端渲染&#xff0c;可以提高页面加载速度&#xff0c;改善 SEO&#xff0c;并提供更好…

【AI工具】jupyter notebook和jupyterlab对比和安装

简单说&#xff0c;jupyterlab是jupyter notebook的下一代。 选择安装一个即可。 一、这里是AI对比介绍 Jupyter Notebook和JupyterLab都是基于Jupyter内核的交互式计算环境&#xff0c;但它们在设计和功能上有一些关键的区别&#xff1a; 用户界面&#xff1a; Jupyter Not…

关于对pagination.js源代码进行修改且引入项目使用

实现效果 使用定时器对组件进行每秒请求&#xff0c;每过固定时间之后&#xff0c;进行下一页项目请求&#xff0c;进行到最后一页请求的时候返回第一页。 首先引入js插件 <script src"./js/pagination.js" type"text/javascript"></script>…

粉丝经济时代:微信订阅号如何助力中小企业增长

在数字化浪潮席卷全球的今天&#xff0c;微信订阅号凭借其独特的优势&#xff0c;成为了中小企业数字化出海的重要工具。作为NetFarmer&#xff0c;我们致力于帮助企业充分利用这一平台&#xff0c;推动业务发展和市场拓展。今天将深入探讨微信订阅号的概念、用途、使用方法、适…

若依修改浏览器标题logo

在线生成透明ICO图标——ICO图标制作https://www.ico51.cn/

使用ZIP包安装MySQL及配置教程

在本教程中&#xff0c;我们将指导您完成使用ZIP包安装MySQL的过程&#xff0c;并对配置文件进行必要的修改&#xff0c;以及解决可能遇到的问题。本示例以MySQL 5.7.44为例&#xff0c;但步骤同样适用于其他版本如MySQL 8.3.0等。请根据实际需要选择适合的版本下载&#xff1a…

【机器学习】神经网络与深度学习:探索智能计算的前沿

前沿 神经网络&#xff1a;模拟人类神经系统的计算模型 基本概念 神经网络&#xff0c;又称人工神经网络&#xff08;ANN, Artificial Neural Network&#xff09;&#xff0c;是一种模拟人类神经系统结构和功能的计算模型。它由大量神经元&#xff08;节点&#xff09;相互连…

报表生成中,左连接、内连接区别与应用

在报表生成中,最常用的连接类型包括:内连接(INNER JOIN)、左连接(LEFT JOIN)。以下是这些连接的简要介绍及其在报表中的应用场景: 左连接 左连接返回左表中的所有记录,以及右表中与左表匹配的记录。如果右表中没有匹配的记录,则右表中的字段值为NULL。 应用场景: …