Linux网络设置

news/2024/5/8 21:16:01

一、网络相关设置内容

将Linux主机接入到网络,需要配置网络相关设置,包括以下内容

1.主机名

2.IP/netmask

3.路由:默认网关

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

centos的网卡配置位置:vim  /etc/sysconfig/network-scripts/

1.临时修改网卡名称

1.增加了一块ens36的网卡

1.先将网卡down掉

ip  link  set  ens36  down

2.然后改名,这里将ens36的名称临时改为eva

ip  link  set  ens36  name   要改的名称

3.最后再启动网卡

2.永久修改网卡名称

1.打开grub菜单的配置文件,绝对路径:/etc/default/grub

2.进入到grub菜单文件添加

3.重新生成grub配置文件,grub的配置文件路径在/boot/grub2/grub.cfg

4.重启主机更新配置

5.成功改名

二、网络相关命令

1.显示所有网络接口的信息:ifconfig

查看网卡信息,网络配置命令ifconfig

安装的包组:rpm  -qi  net-tools

ifconfig:查看网络接口信息,默认是看所有开启的网卡

ifconfig  网卡名:查看指定的单独网卡

ifconfig  网卡名  up:开启网卡

ifconfig  网卡名  down:关闭网卡

ifconfig  -a:显示所有网卡,包括未开启的

ifconfig  网卡名:0  ip/子网:设置临时网卡,虚拟网卡

ifconfig  网卡名  ip/子网:临时设置地址

ifconfig  网卡名称  0:取消网卡设置

2.ip命令

数据链路层:ip  link

网络层:ip  addr

路由:ip  route

1.永久添加路由:

 1.打开网卡配置:vim  /etc/sysconfig/network-scripts/ifcfg-en*

2.这里将更改ip地址和网关配置如下:

初始配置文件中注释如下:

3.重启网卡:systemctl restart network

4.用ip  a查看,可以看到成功更改了IP地址和网关

3.查看主机名:hostname

hostname:查看主机名

hostname  主机名:临时修改主机名

永久修改主机名的两种方法

第一种更改文件的配置,在第一行改名字就行

vim /etc/hostname

将主机名添加到该文件中,但是只有第一行生效

第二种方式,直接用命令改这个主机名

hostnamectl set-hostname  名字:永久更改主机名

4.设置主机中的路由表信息:route

route命令用于查看操作系统的IP路由表,会打印出系统的路由表,包括目标网络、下一跳网关、子网掩码、接口等信息

1.route:显示路由信息

Destination:目标网络ID,表示可以到达的目标网络ID,默认路由,优先级最低

Gateway:到达非直连的网络,将数据发送到临近(下一个)路由器的临近本主机的接口的IP地址,如果是直连网络,gateway是0.0.0.0

Genmask:目标网络对应的netmask

Iface:到达对应网络,应该从当前主机哪个网卡发送出来

Metric:开销cost,值越小,路由记录的优先级最高

2.route  -n:以数字形式显示路由信息

 3.route  add  -net  网段  gw(这个gw是代表网关的意思) 网关:添加静态路由

为了让路由器ping通不同网段

4.route del  -net  网段:删除路由

数字格式以0.0.0.0表示任意目的地址,以192.168.7.2表示默认网关

5.查看网络连接情况:netstat(慢)=ss(快)

netstat:显示与网络相关的统计信息,包括连接状态、网络接口的活动情况、路由表等

命令格式:netstat  选项

选项功能
-a显示所有活动连接和监听端口
-n直接使用IP地址和端口号显示网络连接,而不进行DNS解析
-t查看TCP相关的信息
-p显示与每个连接关联的程序名称或进程名称
-u显示UDP协议相关的信息
-s显示不同协议的统计信息,例如TCP、UDP、ICMP
-o显示与每个连接关联的进程ID
-l显示处于监听状态的网络连接及端口信息

netstat  -natp/-naup

ss命令也用于显示系统网络连接和相关统计信息。相较于netstat,更快速更详细的统计数据

ss  -natp/-naup

一共有11种链接状态

6.测试网络连通性:ping

命令格式:Ping  选项  目标主机

选项功能
-c发送多少个包
-w等待多少秒ping不通自动终止,不会再Ping

7.l路由追踪traceroute

命令格式:traceroute  IP地址

6.解析域名:nslookup

命令格式:nslook  域名

这里用dig显示的可以更加详细

7.scp远程拷贝

将本地/etc/fstab远程拷贝到192.168.7.131的/opt文件下:scp   /etc/fstab  192.168.7.131:/opt

远程从主机esdeath上复制/etc/fstab文件到主机eva成功

8.查看网卡信息:ethtool

命令格式:ethtool  -i  ens33

命令格式:ethtool  -p ens33

这个是在实体机上背后会有闪烁灯闪烁,虚拟机无法演示

三、多网卡绑定:bond

将多块网卡绑定同一IP地址对外提供服务,可以实现高可用或者负载均衡。直接给两块网卡设置同一IP地址是不可以的。通过 bonding,虚拟一块网卡对外提供连接,物理网卡的被修改为相同的MAC地址

1.Bonding聚合链路工作模式

1.轮询 mod=0

数据包轮流通过不同的网络接口发送,实现负载均衡

2.主备 mod=1

一个接口正常工作,其他备用接口处于待命状态,当主接口故障时,备份接口接管工作

3.broadcast(广播策略)mod=3

一个报文会复制两份往bond下的两个接口分别发送出去,当有对端交换机失效,感觉不到任何downtime,有很好的容错机制

4.动态链路聚合 mod=4

根据网络交换机的LACP协议进行动态链路聚合,实现负载均衡和故障切换

5.传输负载均衡 mod=5

按照发送数据包的一组源和目标IP地址进行散列,实现负载均衡

6.自适应负载均衡 mod=6

该模式使用转发散列算法基于源和目标IP地址、源和目标端口号,以及传输协议进行数据包散列。这样不同的数据流可以通过不同的接口进行传输,实现负载均衡,此模式能够根据数据流的特性进行动态调整,并提供较好的负载均衡效果

1.模拟实现bond mod=1

将ens33和ens36多网卡组合bond0

1.编辑网卡配置文件

2.新建的配置文件ifcfg-bond0

配置如下:

3.修改ifcfg-ens33文件

4.ifcfg-ens33配置如下

5.ifcfg-ens36配置如下

6.重启网络服务,应用修改

7.重开一个shell程序登录到192.168.7.10,用cat /proc/net/bonding/bond0查看bond0是否配置成功

8.模拟网卡故障,把ens33关闭,查看是否可以自动切换到备网卡ens36

多网卡绑定成功

四、总结

网络相关的文件

文件类型文件位置文件作用
网卡文件/etc/sysconfig/network-scripts/ifcfg-*修改ip地址、dns、网关获取方式等设置
主机名/etc/hostname永久修改主机名,注意只有第一行生效
dns文件/etc/resolv.conf记录了dns服务的地址
路由/etc/sysconfig/network-scripts/route-ens33永久记录路由
挂载/etc/fstab挂载
用户/etc/passwd用户
密码/etc/shadow密码

http://www.mrgr.cn/p/32688606

相关文章

ROS2学习--OOP方法编写python节点

1.创建工作空间 mkdir -p town_ws/src cd town_ws/src 2.创建功能包 ros2 pkg create village_li --build-type ament_python --dependencies rclpypkg create 是创建包的意思 --build-type 用来指定该包的编译类型,一共有三个可选项ament_python、ament_cmake、cmake --depen…

[python省时间]处理文档,包括批量查找,替换,

1、批量查找替换 # -*- coding: utf-8 -*- import os import re # path=os.getcwd()str_old = insert str_new = frs.event.queue file_formate = init.sql file_sql=open(rF:\bak\init_all.sql, r+, encoding=utf-8) def replace_txt(path):if path.find(file_formate) == len…

【python省时间】时间转换、日期格式化、时间戳转字符、

1、日期格式化 def paserTime(timestamp): t = time.time() f=time.localtime(timestamp/1000) print (t) #原始时间数据 # print (int(t)) #秒级时间戳 print (int(round(t * 1000))) #毫秒级时间戳 #nowTime = lambda: int(round(…

【Qt QML】TabBar的用法

Qt Quick中的TabBar提供了一个基于选项卡的导航模型。TabBar由TabButton控件填充,并且可以与任何提供currentIndex属性的布局或容器控件一起使用,例如StackLayout或SwipeView。 import QtQuick import QtQuick.Controls import QtQuick.LayoutsWindow …

CentOS 7虚拟机配置过程中所需组件的安装(二)

1.安装net-tools组件(解决无 ifconfig) # yum install net-tools 2.安装gcc、c编译器以及内核文件 # yum -y install gcc gcc-c kernel-devel 验证安装成功 3.安装nano(文本编辑器) # yum install nano

【Pytorch】(十四)C++ 加载TorchScript 模型

文章目录 (十四)C 加载TorchScript 模型Step 1: 将PyTorch模型转换为TorchScriptStep 2: 将TorchScript序列化为文件Step 3: C程序中加载TorchScript模型Step 4: C程序中运行TorchScript模型 【Pytorch】(十三)PyTorch模型部署: T…

javaWeb项目-校园志愿者管理系统功能介绍

项目关键技术 开发工具:IDEA 、Eclipse 编程语言: Java 数据库: MySQL5.7 框架:ssm、Springboot 前端:Vue、ElementUI 关键技术:springboot、SSM、vue、MYSQL、MAVEN 数据库工具:Navicat、SQLyog 1、SpringBoot框架 …

马斯克的 xAI 融资 60 亿美元;英伟达收购两家 AI 创企丨 RTE 开发者日报 Vol.193

红杉资本、昆仑万维、字节跳动 开发者朋友们大家好:这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文章 」、「有…

POCEXP编写—EXP编写实战(1)

TOC 1. 前言 通过上一篇文章的了解,应该都了解了POC是怎么编写的,而且POC和EXP的区别就是POC只能验证漏洞,简单来说就是通过判断特定的响应值来判断是否存在漏洞,而且EXP就需要将响应的内容给返回回来,但是整体在编写…

uni-app的POST请求和GET请求

uni-app就像一个盗版的Vue, 和Vue很想,又不完全像 //微信小程序post请求 uni.request({ url: http://127.0.0.1:8000/api/test_post/, // Django后端API地址 method: POST, //指定请求类型(POST还是GET)data: { //数据都要放在这里,以键值对的方式key1: value1, key2: valu…

详解23种设计模式——单例模式

单例模式 | CoderMast编程桅杆单例模式 单例模式是最常用的设计模式之一,他可以保证在整个应用中,某个类只存在一个实例化对象,即全局使用到该类的只有一个对象,这种模式在需要限制某些类的实例数量时非常有用,通常全局…

ROS2学习记录

一、编写C++节点并测试 1.创建功能包 C++功能包使用ament-camke作为编译基础,依赖为rclcpp。打开终端,进入town_ws/src运行下面的指令,目录结构如下 ros2 pkg create village_wang --build-type ament_cmake --dependencies rclcpp2.创建节点 village_wang/src下创建一个wa…

社区发现之标签传播算法(LPA)python实现

社区发现在图领域中备受关注,其根源可以追溯到子图分割问题。在真实的社交网络中,用户之间的联系紧密度不尽相同,导致形成了不同的社区结构。社区发现问题主要分为两类:非重叠和重叠社区。非重叠社区发现指的是每个节点仅属于一个社区,社区之间没有交集。在非重叠社区发现…

GitHub/R3D3项目环境配置踩坑记录

1、前言 项目链接地址:SysCV/r3d3 (github.com) 按照安装步骤容易出现的问题,environment.yaml文件中安装相关包,其中还有两个pip install githttps://github.com/..........这两个建议注释掉,后面再来安装这两个。 2、问题及解…

重磅!!!监控分布式NVIDIA-GPU状态

简介:Uptime Kuma是一个易于使用的自托管监控工具,它的界面干净简洁,部署和使用都非常方便,用来监控GPU是否在占用,非常美观。 历史攻略: docker应用:搭建uptime-kuma监控站点 win下持续观察…

多进程编程:原理、技术与应用

title: 多进程编程:原理、技术与应用 date: 2024/4/26 12:14:47 updated: 2024/4/26 12:14:47 categories:后端开发tags:多进程 并发编程 网络服务 分布式系统 任务处理 进程池 线程对比第一章:进程与线程 进程与线程的概念及区别:进程:进程是操作系统中的一个程序执行实例…

条款48:认识 template 元编程

**常记溪亭日暮,沉醉不知归路。兴尽晚回舟,误入藕花深处。争渡,争渡,惊起一滩鸥鹭。 昨夜雨疏风骤,浓睡不消残酒。试问卷帘人,却道海棠依旧。知否?知否?应是绿肥红瘦。

VS2017修改项目名称

修改项目名称 直接右击项目->重命名只是改了project的vcxproj文件中的ProjectName的值,而如果手动修改了项目文件夹的名称,就会造成解决方案按照其sln文件加载对应的项目时,找不到正确的项目路径,所以会加载失败。有了以上的描述,再来修改项目的名称就简单了,有以下几…

Error: contextBridge API can only be used when contextIsolation is enabled

在electron项目中preload.js文件使用下面的方法时报错 const { contextBridge, ipcRenderer } require(electron); contextBridge.exposeInMainWorld(electronApi, {});node:electron/js2c/renderer_init:2 Unable to load preload script: D:\Vue\wnpm\electron\preload.js …

【刚度矩阵推导】2d frame 单元

2d frame 单元刚度矩阵推导2d frame 单元是x-y平面上的单元,每个节点上有2个平移自由度的和一个转动自由度.局部坐标系下,单元位移向量为: \( u=[ u_1 ,u_2 ,u_3, u_4, u_5, u_6]^{T} \) 其局部坐标系下的刚度矩阵可以由2d truss单元和2d bornoulli-beam单元的刚度矩阵组合而成…