了解Linux网络配置

本章主要介绍网络配置的方法。
  • 网络基础知识
  • 查看网络信息
  • 图形化界面修改
  • 通过配置文件修改
  • 命令行管理

11.1 网络基础知识
一台主机需要配置必要的网络信息,才可以连接到互联网。需要的配置网络信息包括IP、
子网掩码、网关和 DNS。
11.1.1 IP 地址
在计算机中对IP的标记使用的是32bit的二进制,
例如:11000000 10101000 00011010 01100100
这里共有32位由1和0组成的二进制数字,这样的地址对于人类来说并不好记忆,所已用3
个点把这32位的二进制隔成4个部分,每个部分8个二进制数字。
11000000 .10101000 .00011010 .01100100
然后我们把每个部分的二进制转换成十进制之后,IP的格式就是下面这样
的:192.168.26.100
这种对IP的表示方法叫作“点分十进制”。
如同我们的电话号码由“区号+电话号码”组成,例如,下面两个电话号码01088888888和
02188888888,一看号码我们就知道O108888888是北京的电话号码,02188888888是上海
的电话号码。因为不同的城市都有自己的区号,所以不同的城市即便电话号码一样也不会突,
因为区号不一样。
同理,一个IP地址也可以分成两个部分,一个是网络位,另一个是主机位。对于电话号码
来说,我们能一眼判断出来哪个是区号,哪个是电话号码,但是对于来说(如
192.168.26.100),哪些是网络位,哪些是主机位呢?这时就需要用到子网掩码了。
子网掩码是用来标记一个IP里面哪些是网络位,哪些是主机位的。例如,看一个二进制类
型的P地址,共写了两行。
11000000 1010100000011010 01100100
11111111 11111111 11111111 00000000
第一行是IP地址,第二行是子网掩码,二者都是一讲制格式的。需要注意的是,第二h子网
掩码的格式是连续的1和连续的0。
子网掩码为1的部分,对应P地址的团终位部分,子网坯E女О的部分,对应IP地址的主机位
部分。对二者分别用3个点隔成4个部分,变成如下内容。
11000000.10101000.00011010.01100100
11111111.11111111.11111111.00000000
再次分别转换成十进制,得到的结果如下。192.168.26.100
255.255.255.0
所以,我们表示一个IP地址,具体的就是192.168.26.100/255.255.255.0或写成
192.168.26.100/24,这里24表示子网掩码中有24个1,即前24位都是网络位。
11.1.2 网关
我们把一个网络中的网关理解为一个城市中的高铁站,如果我们想从一个城市去往另外一
个城市,需要先到高铁站,坐上高铁之后,高铁会把我们送往另外一个城市。同样地,如果
一个网络中的主机要发送一个数据包去往另外一个网络,则需要先把这个数据包发送到网
关,然后由网关把这个数据包转发到另外一个网络。
所以,如果我们没有给一台机器配置网关,则这台机器的数据包是不能和其他网络的主机
进行通信的,只能和同一个网段的数据包通信。
注意
给机器配置的IP和网关必须是属于同一个网段的。在我们的练习环境中,本书所使用的网络是
192.168.26.0/24网段,我们需要把网关设置为102168262。如果读者所使用的网络是
192.168.X.0/24网段,则需要把网关设置为192.168.26.X.2,这里的X是一个数字。
11.1.3 DNS
两台主机通信时依赖的是IP,但是IP地址并不好记忆,不如主机名好记,例如
www.rhce.cc,再如 www.baidu.com。我们说两台主机通信依赖的是IP,但是我们访问
www.rhce.cc时,这是主机名不是IP,那是怎么通信的呢?这里就要用到 DNS 了。
DNS服务器的主要作用是做域名解析,可以把主机名解析成P地址,所以我们需要给系统
指定 DNS服务器。当我们指定了DNS服务器地址之后,在浏览器中输人www.rhce.cc时, 系统会向 DNS服务器查询 www.rhce.cc的IP,然后再通过这个IP来访问。
在我们的练习环境中,本书所使用的网络是192.168.26.0/24网段,我们需要把 DNS设置
为192.168.26.2。如果读者所使用的网络是192.168.X.0/24网段,则需要把 DNS设置为
192.168.26.X.2,这里的X是一个数字。
下面开始讲解如何查看这些网络信息,以及如何配置这些网络信息。
11.2 查看网络信息
root@op ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.248.25  netmask 255.255.255.0  broadcast 192.168.248.255inet6 fe80::20c:29ff:fe93:c7a7  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:93:c7:a7  txqueuelen 1000  (Ethernet)RX packets 1477  bytes 1867590 (1.7 MiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 418  bytes 34722 (33.9 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536inet 127.0.0.1  netmask 255.0.0.0inet6 ::1  prefixlen 128  scopeid 0x10<host>loop  txqueuelen 1000  (Local Loopback)RX packets 54  bytes 4576 (4.4 KiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 54  bytes 4576 (4.4 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255ether 52:54:00:f3:75:4a  txqueuelen 1000  (Ethernet)RX packets 0  bytes 0 (0.0 B)RX errors 0  dropped 0  overruns 0  frame 0TX packets 0  bytes 0 (0.0 B)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0[root@op ~]# 
这里查看的是所有活跃网卡的信息,如果想查看不管是沾跃还是不沾跃网卡的信息,以通
过ifconfig -a来查看。如果只想查看某张网卡的信息,可以通过“ifconfig 网卡名”来查
看。例如,只查看ens160的网络信息这里ens160是网卡名),命令如下。
[root@op ~]# ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500inet 192.168.248.25  netmask 255.255.255.0  broadcast 192.168.248.255inet6 fe80::20c:29ff:fe93:c7a7  prefixlen 64  scopeid 0x20<link>ether 00:0c:29:93:c7:a7  txqueuelen 1000  (Ethernet)RX packets 1549  bytes 1873226 (1.7 MiB)RX errors 0  dropped 0  overruns 0  frame 0TX packets 460  bytes 40970 (40.0 KiB)TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0[root@op ~]# 
查看网关可以使用route -n命令,这里的-n是为了防止反向解析,即防止把P解析成主机
名,命令如下。
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.248.2   0.0.0.0         UG    100    0        0 ens160
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0
192.168.248.0   0.0.0.0         255.255.255.0   U     100    0        0 ens160
[root@op ~]# 
查看DNS,所使用的DNS记录在/etc/resolv.conf中。
[root@op ~]# cat /etc/resolv.conf 
# Generated by NetworkManager
nameserver 202.96.128.86
nameserver 119.29.29.29
[root@op ~]# 
通过nmcli connection或简写为nmcli conn来查看当前连接,命令如下。
[root@op ~]# nmcli connection 
NAME    UUID                                  TYPE      DEVICE 
ens160  78a69b41-7581-4831-9aae-6b248ea5e809  ethernet  ens160 
virbr0  7cd174af-8505-497c-9432-62fffcae6a14  bridge    virbr0 
[root@op ~]# 
下面查看ens160属性中与IPv4相关的条目,命令如下。
[root@op ~]# nmcli connection show ens160 | grep ipv4
ipv4.method:                            manual
ipv4.dns:                               202.96.128.86,119.29.29.29
ipv4.dns-search:                        --
ipv4.dns-options:                       --
ipv4.dns-priority:                      0
ipv4.addresses:                         192.168.248.25/24
ipv4.gateway:                           192.168.248.2
11.3 图形化界面修改
[root@op ~]# nm-connection-editor 

如果打不开上述图形化界面,可以在终端中输人“nmtui-edit”命令后按【Enter】键,
然后按【Tab】键选择【添加】按钮,再按【Enter】键,如图11-11所示。
11.4 通过配置文件修改.
网卡连接的配置文件在/etc/sysconfig/network-scripts 中,格式为“ifcfg-连接名”,
可以看到连接都被删除了,现在没有任何连接。
[root@op ~]# nmcli connection 
NAME    UUID                                  TYPE      DEVICE 
ens160  78a69b41-7581-4831-9aae-6b248ea5e809  ethernet  ens160 
virbr0  7cd174af-8505-497c-9432-62fffcae6a14  bridge    virbr0 
[root@op ~]# 
下面为网卡 ens160创建一个连接,连接名为ens160。
创建一个文件/etc/sysconfig/network-scripts/ifcfg-ens160,内容如下。
[root@op ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=ens160
UUID=78a69b41-7581-4831-9aae-6b248ea5e809
DEVICE=ens160
ONBOOT=yes
IPADDR=192.168.248.25
PREFIX=24
GATEWAY=192.168.248.2
DNS1=202.96.128.86
DNS2=119.29.29.29
IPV6_PRIVACY=no
[root@op ~]# 
这里字段的含义如下。
(1)DEVICE:用于指定哪张网卡。
(2)NAME:用于指定连接的名称。
(3)ONBOOT:设置的是开机是否自动生效,这里设置为yes。
(4)BOOTPROTO:设置的是通过什么方式获取IP,可选值如下。
① dhcp:通过 DHCP获取IP。
② none或static:手动配置。
(5)IPADDR:设置IP。
(6)NETMASK:设置子网掩码。
(7)GATEWAY:设置网关。
(8)DNS1:设置 DNS,这里最多可以指定3个 DNS,分别是 DNS1、DNS2、DNS3.因
为这个配置文件是新创建的,
11.5 命令行管理
在命令中查看现有连接,命令如下。
[root@op ~]# nmcli connection 
NAME    UUID                                  TYPE      DEVICE 
ens160  78a69b41-7581-4831-9aae-6b248ea5e809  ethernet  ens160 
virbr0  7cd174af-8505-497c-9432-62fffcae6a14  bridge    virbr0 
删除连接的命令如下。
1 nmcli connection delete 连接名
现在把连接ens160删除,命令如下。
[root@op ~]# nmcli connection delete ens160
成功删除连接 "ens160" (ea74cf24‐c2a2‐ecee‐3747‐a2d76d46f93b)。
[root@op ~]#
命令行添加连接的命令是nmcli connection add
(1)type:类型。 (2)con-name:连接名。
(3)ifname:网卡名。
(4)ipv4.method manual/auto manual:手动配置IP,auto为自动获取。
(5)ipv4.addresses:指定IP及子网掩码。
(6)ipv4.gateway:指定网关。
(7)ipv4.dns :指定DNS。
(8)autoconnect yes:设置连接开机自动生效。

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

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

相关文章

1.10 C语言之外部变量与作用域

1.10 C语言之外部变量与作用域 一、外部变量概述二、练习 一、外部变量概述 我们说&#xff0c;函数&#xff08;不管是main函数还是其他函数&#xff09;内部定义的变量&#xff0c;其作用范围都只在函数内部&#xff0c;我们把这些变量叫做自动变量或者局部变量。除了局部变…

嵌入式工程师校招经验与学习路线总结

前言&#xff1a;不知不觉2023年秋招已经结束&#xff0c;作者本人侥幸于秋招中斩获数十份大差不差的OFFER&#xff0c;包含&#xff1a;Top级的AIGC&#xff0c;工控龙头&#xff0c;国产MCU原厂&#xff0c;医疗器械&#xff0c;新能源车企等。总而言之&#xff0c;秋招总体情…

HarmonyOS开发工具DevEco Studio的下载和安装

一、DevEco Studio概述 一、下载安装鸿蒙应用开发工具DevEco Studio 开发鸿蒙应用可以从鸿蒙系统上运行第一个程序Hello World开始。 为了得到这个Hello World&#xff0c;你需要得到这个Hello World的源代码&#xff0c;源代码是用人比较容易看得懂的计算机编程语言规范写的…

leetcode做题笔记1466. 重新规划路线

n 座城市&#xff0c;从 0 到 n-1 编号&#xff0c;其间共有 n-1 条路线。因此&#xff0c;要想在两座不同城市之间旅行只有唯一一条路线可供选择&#xff08;路线网形成一颗树&#xff09;。去年&#xff0c;交通运输部决定重新规划路线&#xff0c;以改变交通拥堵的状况。 路…

排序:直接选择排序

直接选择排序&#xff1a; 本质&#xff1a; 直接选择排序的本质就是在数组中进行遍历挑选出最大的元素&#xff0c;讲最大的元素放到对应的位置后&#xff0c;再次选出次大的位置&#xff0c;而后又放到对应的位置..........................直到数组成为一个有序序列。 优…

Leetcode刷题笔记题解(C++):LCR 121. 寻找目标值 - 二维数组

思路&#xff1a;从左小角或者右上角开始遍历&#xff0c;假设右上角开始遍历&#xff0c;如果当前值大于目标值则列-1&#xff1b;如果当前值小于目标值则行1&#xff0c;以此遍历来查找目标值&#xff1b;注意col和row的选取 class Solution { public:bool findTargetIn2DPl…

异常检测 | 基于孤立森林(Isolation Forest)的数据异常数据检测(结合t-SNE降维可视化)

异常检测 | MATLAB实现基于孤立森林的数据异常检测 目录 异常检测 | MATLAB实现基于孤立森林的数据异常检测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 Matlab实现基于孤立森林(Isolation Forest)的数据异常数据检测可视化&#xff08;完整源码和数据) 基于孤立森林(…

状态机的练习:按键控制led灯

设计思路&#xff1a; 三个按键控制led输出。 三个按键经过滤波(消抖)&#xff0c;产生三个按键标志信号。 三个led数据的产生模块&#xff08;流水&#xff0c;跑马&#xff0c;闪烁模块&#xff09;&#xff0c;分别产生led信号。 这六路信号&#xff08;三路按键信号&am…

SpringBoot 注入RedisTemplat 启动报错

需求 因为需要限制部门内多个人员同一时间操作同一批客户的需求&#xff0c;考虑下决定用Redis滑动窗口实现自过期以及并发校验。 问题 新建了个Redis工具类封装RedisTemplat 操作&#xff0c;到启动时却发现无法正常启动&#xff0c;报错注入错误。 The injection point has…

SpringBoot集成系列--ElasticJob

文章目录 一、集成步骤1、添加 ElasticJob 的依赖2、配置 ElasticJob3、定义Job 二、ElasticJob-UI三、Elastic-Job分片理解四、原理 一、集成步骤 1、添加 ElasticJob 的依赖 引入相关依赖到pom.xml <!-- Elastic-Job --> <dependency><groupId>org.apac…

Liunx Centos 防火墙操作

liunx centos 防火墙 查看防火墙状态 systemctl status firewalld查看已经开放的端口 firewall-cmd --list-ports添加端口3306 firewall-cmd --zonepublic --add-port3306/tcp --permanent重启防火墙 firewall-cmd --reload数据库开放账号可以外网登陆 mysql -u root -p …

JavaSE语法之五:数组的定义与使用(超详解!!!)

文章目录 一、数组的概念1. 什么是数组2. 数组的创建及初始化3. 数组的使用3.1 数组中元素的访问3.2 遍历数组 二、数组是引用类型1. 初始JVM的内存分布2. 基本类型变量与引用变量的区别3. 引用变量4. 认识null 三、数组的应用场景1. 保存数据2. 作为函数的参数2.1 参数传基本类…

Cheat Engine修改器检测方案

在游戏安全对抗过程中&#xff0c;有不少外挂的实现基于对游戏内存模块进行修改&#xff0c;这类外挂通常会使用「内存修改器」。 据FairGuard游戏安全数据统计&#xff0c;在游戏面临的众多安全风险中&#xff0c;修改器的占比高达16% 。如此高的占比&#xff0c;修改器的危害…

血糖仪_智能便携式血糖检测仪定制_基于联发科MTK8788血糖仪方案

糖尿病早期通常没有明显的症状&#xff0c;因此很难自己意识到自己已经进入高血糖状态。而且&#xff0c;到医院进行检查需要挂号、门诊和排队等步骤&#xff0c;不仅费时费力&#xff0c;对于父母来说&#xff0c;频繁去医院检查是不现实的&#xff0c;也不舍得这样做。因此&a…

maven-assembly-plugin 自定义打包

我想把input文件夹给打包进去 pom文件 <build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-assembly-plugin</artifactId><executions><execution><!-- 配置执行器 --><i…

vue2 百度地图实现 车在线路上移动 BMap、BMapGL

文章目录 效果BMap 实现vue2 中BMap实现vue2 中使用BMapGL实现 参考文章&#xff1a; 百度地图API实时画出动态运行轨迹&#xff08;一条行驶轨迹&#xff09;&#xff0c;车头实时指向行驶方向&#xff0c;设置角度偏移 下文中可能用到的图片统一放在上面&#xff0c;自取。 …

Halcon threshold_sub_pix (Operator)

read_image(Image,fabrik) threshold_sub_pix(Image,Border,35) dev_display(Border)Image是输入的原始图像&#xff0c;Threshold是设定的阈值&#xff0c;Width和Height是像素值计算区域的大小&#xff0c;ThresholdedRegion是经过分割后得到的二值化结果。 在对图像进行二值…

深眸科技以机器视觉高性能优势,为消费电子行业提供优质解决方案

机器视觉技术近年来发展迅速&#xff0c;基于计算机对图像的处理与分析&#xff0c;能够识别和辨别目标物体&#xff0c;被广泛应用于人工智能、智能制造等领域。 机器视觉凭借着高精度、高效率、灵活性和可靠性等优势&#xff0c;不断推进工业企业生产自动化和智能化进程&…

Anaconda安装教程及多次安装失败原因

Anaconda下载网址 本教程包含两部分&#xff1a;安装教程和多次安装Anaconda导致的失败原因分析 Anaconda安装包官网下载链接 ![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/b5be0deb0aef4a81a594df79ddc1cc96.png#pic_center 安装 按以下步骤安装 红色波浪…

UEC++ 探索虚幻5笔记 day11

虚幻5.2.1探索 项目目录探索 C工程一定不能是中文路径&#xff0c;中文项目名&#xff0c;最好全部不要用中文&#xff0c;蓝图项目可以是中文浅浅创建一个空项目&#xff0c;讲解一下之前UE4没有讲解的项目目录文件的分布组成 .vs&#xff1a;文件夹一般是项目编译缓存文件夹…