网络配置(IP、NETMASK、GATEWAY、DNS、DHCP)

参考: 

  • 初学Linux之网络配置(IP、NETMASK、GATEWAY、DNS、DHCP)-CSDN博客
  • 【学习笔记】网关 & 路由_网关和路由-CSDN博客
  • 【学习笔记】计算机网络 IP地址与MAC地址_根据mac分配ip-CSDN博客
  • 【学习笔记】TCP 和 UDP 协议_tcp 发送 syn 应答没有syn ack-CSDN博客

一、IP 与 掩码Netmask

1.1 概念

        IP: internet protocol address 网络进程地址。

        IPv4(Internet Protocol version4)地址:IPv4使用32位(4字节)地址,因此地址空间中只有4,294,967,296(2)个地址。不过,一些地址是为特殊用途所保留的,如专用网络(约1800万个地址)和多播地址(约2.7亿个地址),这减少了可在互联网上路由的地址数量。IPv4地址可被写作任何表示一个32位整数值的形式,但为了方便阅读和分析,它通常被写作点分十进制的形式,即四个字节被分开用十进制写出,中间用点分隔(摘自百度)。例如11111110.11111110.11111110.11111110 =254.254.254.254

         子网掩码用来划分网络区域,子网掩码非0的位对应的ip上的数字表示这个ip的网络位,子网掩码0位对应的数字是ip的主机位。 非0 - 网络位 0 - 主机位

         网络位表示网络区域,主机位表示网络区域里某台主机。例如172.25.254.33/24,就是说ip为172.25.254.33,掩码为24=255.255.255.0。故网络位为:172.25.254.0,主机位为33。

当说172.25.254.33/24时,这意味着:

  • IP地址:172.25.254.33 是一个具体的设备在网络上的唯一标识。
  • /24 表示这个地址的前24位比特代表网络部分,剩下的8位比特(因为IPv4地址共32位,32-24=8)代表主机部分。子网掩码 24 = 255.255.255.0

当说172.25.0.1/16时,这意味着:

  • /16 表示这个地址的前16位比特代表网络部分,剩下的16位比特(因为IPv4地址共32位,32-16=16)代表主机部分。子网掩码 16 = 255.255.0.0

        如果两台主机网络位一致,主机位不一致的2个ip可以直接通信

172.25.254.172/24 与172.25.254.72/24可以通信,172.25.0.1/16与172.25.254.1/24无法通信。

1.1.1 静态IP 与 动态IP 

静态IP地址

含义:静态IP地址是手动配置并固定不变的IP地址。一旦分配给一个设备,除非手动更改,否则这个地址不会改变。

作用

  1. 可靠性:服务器和需要持续可访问的服务(如网站、邮件服务器)通常使用静态IP地址,确保用户可以始终通过相同的地址访问它们。
  2. 方便远程访问:静态IP使得远程管理和访问变得容易,因为地址不会变动。
  3. 网络配置:对于需要特定端口转发、DNS记录或其他网络配置的应用,静态IP是必要的。

 动态IP地址

含义:动态IP地址是由网络中的DHCP(动态主机配置协议)服务器自动分配的,每次设备连接到网络时都可能获得不同的地址。

作用

  1. 资源效率:动态分配IP地址可以有效利用有限的IP地址资源,特别适用于家庭网络和移动设备。
  2. 易管理性:对于普通用户而言,动态IP减少了手动配置的需要,使得网络连接过程更加自动化。
  3. 安全性:频繁变化的IP地址可以增加网络的安全性,因为攻击者更难追踪和针对特定设备。

        静态网络设定好之后改为动态网络,可以更改。但是一开始就动设定为动态网络,更改为静态网络,会无法更改因为没有指定过ip。当给动态网络指定一个静态ip后再设定成静态的时候可以设定成功。        

        当网络初始设置为动态IP时,设备没有固定的IP地址,而是依赖于DHCP服务器自动分配。如果想要从动态IP切换到静态IP,由于设备没有预先配置静态IP地址信息(如IP地址、子网掩码、默认网关等),直接在设置中改为静态模式可能会失败,因为没有指定必需的静态IP参数。

        然而,如果先在动态网络中手动指定了一个IP地址(尽管这通常不是动态分配机制的工作方式),相当于临时将其行为转变为静态,之后再将网络设置正式改为静态模式时,由于已经明确了IP地址等信息,所以可以成功转换为静态IP配置。

1.2 命令行 - 临时设定网络接口

注意:device的名字一个物理事实,看到什么名字只能用什么名字 

以下命令都只是临时设定网络接口命令,重启后恢复原状

ping IP  #检查所连接设备网络是否畅通#查看所有网络接口
ip addr
ip addr add ip/24 dev device    #添加ip/24到device
ip addr del dev device ip/24      #在device删除ip/24
ip addr flush eth0               #更改ip的步骤,先将eth0上的全部删掉
ip addr add ip/24 dev device     #然后重新添加设定#查看所有网络接口
ifconfig
ifconfig  device ip/24  #临时设定ip
ifconfig  device down  #关闭device
ifconfig  device up  #开启device

 1.3 图形化 - 永久设定网络接口

        双击某一个网络接口即可进行相应的参数设定

        :静态网络设定好之后改为动态网络,可以更改。但是一开始就动设定为动态网络,更改为静态网络,会无法更改因为没有指定过ip。当给动态网络指定一个静态ip后再设定成静态的时候可以设定成功。

nm-connection-editor 

1.4修改网络配置文件

 /etc/sysconfig/network-scripts/       配置文件所在目录
ifcfg-xxxx                            网络配置文件的命令规则

 

        在较新的Linux发行版中,如使用Systemd的系统(如Fedora、CentOS 7及以上版本),网络接口命名规则可能发生了变化,不再使用传统的eth0、eth1等,而是采用如enp0s3、ens33等基于固件、位置和序列的命名方式。因此,你需要检查是否有符合新命名规则的配置文件,如ifcfg-ens33。我也没找到这个文件,你们可以找找试试。

DEVICE=xxxx                                   接口使用设备名称
BOOTPROTO=dhcp | static |none         设备工作方式:动态|静态|静态
ONBOOT=yes                            网络服务开启时自动激活网卡
IPADDR=                                       ip地址
PREFIX=24                                     子网掩码
NETMASK=255.255.255.0                         子网掩码
NAME=                                         接口名称

二、 网关 和 路由

         网关(gateway):从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址。简单来讲 ,网关为路由服务设备上和自己处在同一个网段的那个ip。
        路由(routing):路由是指路由器从一个接口上收到数据包,根据数据包的目的地址进行定向并转发到另一个接口的过程。具有路由功能,就是具有地址转换功能。

        路由器和网关都是网络中连接不同子网的主机。二者都可对到达该主机的数据包进行转发。但二者具有本质区别。路由器工作在OSI 模型的物理层,链路层和网络层。网关可能工作在 OSI 模型的所有七层之中。

TCPIP四层模型和OSI七层模型对应表

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

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

相关文章

java版CRM客户关系管理系统Spring Cloud alibaba Spring Boot成长型企业必备的客户关系管理系统

鸿鹄CRM客户关系管理系统是一款基于Java语言开发的CRM系统,采用了Spring Cloud Alibaba、Spring Boot、MybatisPlus、Redis和VUE3 ElementUI等技术,构建了一个微服务架构。该系统具有以下功能模块: 一、待办事项 1、今日需联系客户&#xf…

P2P去中心化网络的重点组件

P2P去中心化网络的重点组件 P2P(Peer-to-Peer)去中心化网络是一种网络架构,其中所有参与者(节点)都具有平等地位,直接相互通信,而无需中央协调机构。以下是P2P去中心化网络的关键组件及其详细介…

C# .NET 8 SQL 批量插入 Dapper、BulkCopy 和表值参数

介绍 在 .NET 应用程序中处理大型数据集通常需要将数据高效地插入到 SQL Server 中。本文探讨了使用 C# 和 .NET 8 批量插入数据的三种流行技术:Dapper、SqlBulkCopy 和表值参数 (TVP)。我们将比较它们的性能、易用性和对不同场景的适用性。 1. Dapper Bulk Inser…

论Lambda架构及其应用

摘要: 2023年3月,我公司承担了本市教育局智慧教育云平台的项目,该平台旨在为教育机构和学生提供一个在线学习与教学的环境,包含课程管理、在线学习、资源共享、互动交流等功能。在项目中我担任系统架构师,全面负责项目…

实在RPA的硬件交互功能:U盾机械臂组件

一、为什么需要U盾机械臂? 在使用银行U盾(USB Key)进行操作时,涉及到许多手动确认步骤,特别是按下U盾上的确认按键。这种手动操作是自动化过程中的一个瓶颈。为了实现完全自动化,需要一种方法来自动按下U…

代码随想录算法训练营:17/60

非科班学习算法day17 | LeetCode654:最大二叉树 ,Leetcode617:合并二叉树 ,Leetcode700:二叉搜索树中的搜索,Leetcode98:验证二叉搜索树 目录 介绍 一、基础概念补充: 1.二叉搜索树 二、LeetCode题目 1.LeetCode…

价格!六安市各地双软(软件企业、软件产品)办理流程步骤及申报材料、时间

六安市各地双软(软件企业、软件产品)办理流程步骤材料 (更多问题详情可以查看小编主页方式) 第一步:办理软件企业认定 1.打开办理软件企业认定的中心网站,然后注册并登录,下载双软认定申报表…

大数据系统软件助力工业数字化转型

随着科技的不断进步,大数据系统软件在工业领域的应用日益广泛,成为推动工业数字化转型的关键技术之一。工业数字化转型旨在通过技术手段提升生产效率、优化资源配置,并提供智能决策支持,从而实现更高效、可持续的生产模式。 数据采…

Kafka 集群如何处理生产者和消费者处理消息速率差异问题?

kafka 集群如何处理生产者和消费者处理消息速率差异问题? Kafka 集群通过多种机制来处理生产者和消费者处理消息速率的差异问题,确保消息的高效传递和系统的 稳定性。以下是详细的解释和机制: 1. 消息缓冲机制 Kafka 使用消息缓冲机制来处理生产者和消费者速率的不匹配。…

接口测试中遇到的sessionID验证问题

在接口测试中,经常会存在联调的接口,比如登录完去调用其他的接口,这时就会存在一个问题,那就是登录成功了,但是其他接口失败了,这个时候就需要用到一个sessionID去传入其他接口验证合法性请求,这…

k8s重启后报错Error getting node not found

今天升级一台3主的k8s集群的配置。升级其中一台后另外两个节点就出现Not Ready的状态。 升级之前最好把一些能停的应用停掉。或者能够通过增加临时节点来进行扩容,不然所有pod调度到其他节点,可能把其他节点压垮。没办法,只能把其他两台直接…

Python学习前简介

1.python简介 2.python特点 3.python解释器 4.pyCharm简介 一、python简介 Python是一种高级编程语言,用于多种应用,包括网站开发、数据科学、人工智能、机器学习、桌面应用、网络应用、软件开发、网络爬虫等。它由Guido van Rossum于1991年首次发布&am…

group by和select的兼容性问题

group by和select的兼容性问题 在标准的SQL语法中,GROUP BY 和 SELECT 之间不存在兼容性问题,因为它们是 SQL 查询语句的基本组成部分,而且它们的使用方式是相互兼容的。 SELECT 子句和 GROUP BY 子句的关系: SELECT 子句&#…

Matlab进阶绘图第61期—滑珠散点图

滑珠散点图也是一种在《Nature》中常见的数据图。 其功能类似于柱状图,但更加简洁易读。 由于Matlab中没有现成的函数绘制滑珠散点图,因此需要大家自行解决。 本文利用自己制作的BubbleScatter工具,进行滑珠散点图的绘制,先来看…

【山东大学项目实训】进度汇报16

进行了带有历史记录的问答链的修改优化 Chat_QA_chain_self from langchain.chains import ConversationalRetrievalChain from qa_chain.model_to_llm import model_to_llm from qa_chain.get_vectordb import get_vectordbclass Chat_QA_chain_self:"""&quo…

ServBay[中文] 下一代Web开发环境

ServBay是一个集成式、图形化的本地化Web开发环境。开发者通过ServBay几分钟就能部署一个本地化的开发环境。解决了Web开发者(比如PHP、Nodejs)、测试工程师、小型团队安装和维护开发测试环境的问题,同时可以快速的进行环境的升级以及维护。S…

头歌Python作业——8.1 模拟生成身份信息及查验身份(project)

目录 第1关 第2关 第3关 第4关 第1关 import random def person_name(gender_of_id, last_name_file, male_name_file, female_name_file):"""参数 gender_of_id:性别,字符串类型参数 last_name_file:百家姓文件名&…

Chrome开发者工具学习

打开开发者工具: 可以通过在网页上点击右键并选择“检查”来打开。 或者使用快捷键Ctrl Shift I(在Windows/Linux上)或Command Option I(在Mac上)。 界面概览: 熟悉DevTools的基本面板,如“…

【精品案例】数字孪生技术与数字工厂案例(59页PPT)

引言:随着工业4.0和智能制造的快速发展,数字孪生技术和数字工厂已成为制造业转型升级的重要趋势。数字孪生技术通过构建虚拟的数字模型,实现对物理实体全生命周期的映射与仿真,为企业的产品研发、设计、制造等提供有力支持。而数字…

【AI大模型应用开发】3. RAG初探 - 动手实现一个最简单的RAG应用

0. 什么是RAG 大模型也不是万能的,也有局限性。 LLM 的知识不是实时的LLM 可能不知道你私有的领域/业务知识 RAG(Retrieval Augmented Generation)顾名思义:通过检索的方法来增强生成模型的能力。你可以把这个过程想象成开卷考…