了解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 1500
        inet 192.168.248.25  netmask 255.255.255.0  broadcast 192.168.248.255
        inet6 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 0
        TX packets 418  bytes 34722 (33.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::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 0
        TX packets 54  bytes 4576 (4.4 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 192.168.122.1  netmask 255.255.255.0  broadcast 192.168.122.255
        ether 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 0
        TX 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 1500
        inet 192.168.248.25  netmask 255.255.255.0  broadcast 192.168.248.255
        inet6 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 0
        TX 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:设置连接开机自动生效。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

0010Java安卓程序设计-ssm基于安卓的掌上校园系统

文章目录 **摘要**目录系统实现5.2管理员功能模块开发环境 编程技术交流、源码分享、模板分享、网课分享 企鹅&#x1f427;裙&#xff1a;776871563 摘要 随着Internet的发展&#xff0c;人们的日常生活已经离不开网络。未来人们的生活与工作将变得越来越数字化&#xff0c;…

【Java系列】函数式接口编程

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

【redis笔记】redis应用

redis应用 redis 发布订阅 redis客户端可以订阅任意数量的频道 订阅方式 subscribe channel1 – 订阅了channel1频道 发布方式 订阅了之后&#xff0c;可以在任意客户端发布消息到指定channel publish channel1 hello – 往channel发布hello&#xff0c;会返回订阅channe…

class036 二叉树高频题目-上-不含树型dp【算法】

class036 二叉树高频题目-上-不含树型dp code1 102. 二叉树的层序遍历 // 二叉树的层序遍历 // 测试链接 : https://leetcode.cn/problems/binary-tree-level-order-traversal/ code1 普通bfs code2 一次操作一层 package class036;import java.util.ArrayList; import java…

9. 使用Pthreads实现线程池(一)

背景 多线程的一个典型应用场景就是服务器的并发处理,如下图所示,多名用户向服务器发出数据操作的请求。为了提高并发性,我们可以在每收到一个用户请求时就创建一个线程处理相关操作。这种操作在请求数量较少时没有什么问题,但在请求数量很多时你会发现线程的创建和销毁所占…

绑定域名简单教程

&#x1f4d1;打牌 &#xff1a; da pai ge的个人主页 &#x1f324;️个人专栏 &#xff1a; da pai ge的博客专栏 ☁️宝剑锋从磨砺出&#xff0c;梅花香自苦寒来 &#x1f324;️安装Nginx环境 &…

第七次作业

1&#xff0c; 给定一个包含n1个整数的数组nums&#xff0c;其数字在1到n之间&#xff08;包含1和n)&#xff0c;可知至少存在一个重复的整数&#xff0c;假设只有一个重复的整数&#xff0c;请找出这个重复的数 arr input("") num [int(n) for n in arr.split()]…

mysql 5.7 Unknown column ‘password‘ in ‘field list‘

问题现象&#xff1a; 执行sql : select user&#xff0c;host,password from user&#xff1b;时提示 ERROR 1054(42S22):Unknown column password in field list 现象如下图所示&#xff1a; mysql 5.7开始 密码字段用&#xff1a;authentication_string

http接口自动化测试框架实现

一、测试需求描述 对服务后台一系列的http接口功能测试。 输入&#xff1a;根据接口描述构造不同的参数输入值 输出&#xff1a;XML文件 eg:http://xxx.com/xxx_product/test/content_book_list.jsp?listid1 二、实现方法 1、选用Python脚本来驱动测试 2、采用Excel表格…

【hacker送书第10期】AI时代系列丛书(五选一)

AI时代系列丛书 AI时代程序员开发之道✨内容简介参与方式 AI时代项目经理成长之道✨内容简介参与方式 AI时代架构师修炼之道✨内容简介参与方式 AI时代产品经理升级之道✨内容简介参与方式 AI时代Python量化交易实战✨内容简介参与方式 AI时代程序员开发之道✨ 内容简介 本书是…

zabbix配置snmp trap--使用snmptrapd和Bash接收器--图文教程

1.前言 我的zabbix的版本是5.0版本&#xff0c;5.0的官方文档没有使用bash接收器的示例&#xff0c;6.0的官方文档有使用bash接收器的示例&#xff0c;但是&#xff0c;下载文件的链接失效&#xff1f;&#xff01; 这里讲解zabbix-server端配置和zabbix web端配置 2.zabbix-…

好用免费的AI换脸5个工具

在当今社会的发展中&#xff0c;人工智能&#xff08;Artificial Intelligence, AI&#xff09;扮演着关键的角色&#xff0c;其应用领域不断扩展。作为AI的一个分支&#xff0c;换脸技术近年来备受欢迎。这项技术使得将一个人的面部特征迁移到另一个人的照片或视频成为可能。除…

链式二叉树的创建及遍历(数据结构实训)

题目&#xff1a; 链式二叉树的创建及遍历 描述&#xff1a; 树的遍历有先序遍历、中序遍历和后序遍历。先序遍历的操作定义是先访问根结点&#xff0c;然后访问左子树&#xff0c;最后访问右子树。中序遍历的操作定义是先访问左子树&#xff0c;然后访问根&#xff0c;最后访问…

Ubuntu宝塔面板本地部署轻论坛系统HadSky并远程访问

文章目录 前言1. 网站搭建1.1 网页下载和安装1.2 网页测试1.3 cpolar的安装和注册 2. 本地网页发布2.1 Cpolar临时数据隧道2.2 Cpolar稳定隧道&#xff08;云端设置&#xff09;2.3 Cpolar稳定隧道&#xff08;本地设置&#xff09;2.4 公网访问测试 总结 前言 经过多年的基础…

【python、opencv】opencv仿射变换原理及代码实现

opencv仿射变换原理 仿射变换是opencv的基本知识点&#xff0c;主要目的是将原始图片经过仿射变换矩阵&#xff0c;平移、缩放、旋转成目标图像。用数学公式表示就是坐标转换。 其中x&#xff0c;y是原始图像坐标&#xff0c;u&#xff0c;v是变换后的图像坐标。将公式转换为…

深入Os--动态链接

1.动态链接库的使用 动态库支持以两种模式使用&#xff0c;一种模式下&#xff0c;在程序加载运行时&#xff0c;完成动态链接。一种模式下&#xff0c;在程序运行中&#xff0c;完成动态链接。 1.1.程序加载运行时完成动态链接 我们通过一个实例介绍程序加载运行时&#xff0c…

深入理解Dubbo-1.初识Dubbo

&#x1f44f;作者简介&#xff1a;大家好&#xff0c;我是爱吃芝士的土豆倪&#xff0c;24届校招生Java选手&#xff0c;很高兴认识大家&#x1f4d5;系列专栏&#xff1a;Spring源码、JUC源码、Kafka原理、分布式技术原理&#x1f525;如果感觉博主的文章还不错的话&#xff…

12.7作业

1. #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//***********窗口相关设置***********//设置窗体大小this->resize(540,410);this->setFixedSize(540,410);//取消菜单栏this->setWindowFlag(Qt::FramelessWindowHint);/…

【数据库】基于时间戳的并发访问控制,乐观模式,时间戳替代形式及存在的问题,与封锁模式的对比

使用时间戳的并发控制 ​专栏内容&#xff1a; 手写数据库toadb 本专栏主要介绍如何从零开发&#xff0c;开发的步骤&#xff0c;以及开发过程中的涉及的原理&#xff0c;遇到的问题等&#xff0c;让大家能跟上并且可以一起开发&#xff0c;让每个需要的人成为参与者。 本专栏会…

MySQL之binlog文件过多处理方法

背景 MySQL由于大量读写&#xff0c;导致binlog文件特别的多。从而导致服务器disk空间不足问题。 先备份binlog文件 tar -zcvf mysql.tar.gz mysql/data/mysql-bin.00* 修改MySQL配置 binlog过期时间 show variables like expire_logs_days; 这里 0 表示 永不过期 如果为 n…