贵阳做网站好的公司有哪些/如何制作一个自己的网页网站
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,一看这个号码我们就知道01088888888是北京的电话号码,02188888888是上海的电话号码。因为不同的城市都有自己的区号,所以不同的城市即使电话号码一样也不会冲突,因为区号不一样。
同理,对于一个IP地址来说也是分成两个部分,一个网络位一个是主机位。对于电话号码来说,我们能一眼判断出来哪个是区号,哪个是电话号,但是对于IP来说(如192.168.26.100),哪些是网络位哪些是主机位呢?这时就需要用到子网掩码了。
子网掩码是用来标记一个IP里面哪些是主机位,哪些是网络位的。例如,看一个二进制类型的IP地址,共写了两行。
11000000 10101000 00011010 01100100
11111111 11111111 11111111 00000000
第一行是IP地址,第二行是子网掩码,两者都是二进制格式的。需要注意的是,第二行子网掩码的格式是连续的1和连续的0组成。
子网掩码为1的那部分,对应IP地址的网络位部分,子网掩码为0的部分,对应IP地址的主机位部分。对二者分别用3个点隔成4个部分,变成如下内容。
11000000 .10101000. 00011010. 01100100
11111111 .11111111 .11111111 .00000000
再次分别转换成10进制,得到的结果是:
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网段,我们需要把网关设置为192.168.26.2。如果读者所使用的网络是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服务器的主要作用是用于做域名解析的,可以把主机名解析成IP地址,所以我们需要给系统指定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 查看网络信息
查看IP信息可以通过ifconfig命令,命令如下所示。
[root@server ~]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.130 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::20c:29ff:fec4:5b02 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 34942 bytes 5009818 (4.7 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 25451 bytes 2424735 (2.3 MiB)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>...输出...
virbr0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500ether 52:54:00:b2:c1:98 txqueuelen 1000 (Ethernet)...输出...
[root@server ~]#
这里查看的是所有活跃网卡的信息,如果想查看不管活跃还是不活跃网卡的信息可以通过ifconfig -a查看。这里ens160是网卡名,如果只想查看某张网卡的信息,可以通过“ifconfig 网卡名”来查看,例如,只查看ens160的网络信息,命令如下所示。
[root@server ~]# ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.130 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::20c:29ff:fec4:5b02 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 35037 bytes 5022038 (4.7 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 25564 bytes 2439402 (2.3 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[root@server ~]#
这里inet 后面跟的是此网卡的IP,ether后面跟的是此网卡的MAC地址。
也可以通过“ip address show 网卡名”来查看,例如,查看ens160的网络信息,命令如下所示。
[root@server ~]# ip address show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:0c:29:c4:5b:02 brd ff:ff:ff:ff:ff:ffinet 192.168.26.130/24 brd 192.168.26.255 scope global dynamic noprefixroute ens160valid_lft 1537sec preferred_lft 1537secinet6 fe80::20c:29ff:fec4:5b02/64 scope link noprefixroute valid_lft forever preferred_lft forever
[root@server ~]#
这里address可以简写为addr或a,show可以简写为sh。
如果要查看所有网卡的信息,可以写为"ip a"。如果网卡ens160上配置了多个IP,通过ifconfig ens160命令只能看到一个IP,如果要看到所有的IP可以通过ip address show ens160才可以。
查看网关可以通过route -n命令,这里-n的意思是为了防止反向解析,即防止把IP解析成主机名,命令如下所示。
[root@server ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.26.2 0.0.0.0 UG 100 0 0 ens160
192.168.26.0 0.0.0.0 255.255.255.0 U 100 0 0 ens160
[root@server ~]#
这里可以看到,网关是192.168.26.2。
查看DNS,所使用的dns记录在/etc/resolv.conf中。
[root@server ~]# cat /etc/resolv.conf
# Generated by NetworkManager
search localdomain rhce.cc
nameserver 192.168.26.2
[root@server ~]#
在nameserver后面指定的就是当前默认使用的dns。
为了好理解,这里我们举个例子。我们在一张标签上写上IP、子网掩码、网关、DNS等信息,然后把这个标签贴到网卡上,那么这张网卡就有了这些网络信息了,如图11-1所示。
这个标签就叫作连接(connection),给网卡配置IP,只要给这个网卡建立一个连接就可以了。
通过nmcli connection 或简写为nmcli conn查看当前连接,命令如下所示。
[root@server ~]# nmcli connection
NAME UUID TYPE DEVICE
ens160 935ffc86-d4ce-465e-a32a-7d5aec8a9771 ethernet ens160
[root@server ~]#
这里DEVICE所对应的是网卡名,NAME对应的是连接名。整句的意思就是网卡ens160存在了一个连接,名称叫作ens160。
查看连接的具体属性,可以通过“nmcli conn show 连接名”来查看。
下面查看ens160属性中和iPv4相关的条目,命令如下所示。
[root@server ~]# nmcli connection show ens160 | grep ipv4
ipv4.method: auto
ipv4.dns: --...输出...
ipv4.dhcp-reject-servers: --
[root@server ~]#
这里可以看到,ens160获取IP的方式是DHCP。
因为我们要练习创建连接,所以这里先把此连接删除。
[root@server ~]# nmcli connection delete ens160
成功删除连接 "ens160" (935ffc86-d4ce-465e-a32a-7d5aec8a9771)。
[root@server ~]#
这里已经查看到了相关的网络信息了,如果要配置IP、网关、DNS等网络信息呢?下面我们来分别来讲解如何通过图形化的方式、修改配置文件的方式、命令行的方式来配置网络信息。
11.3 图形化界面修改
在root用户或者普通用户下执行nm-connection-editor。
[root@server ~]# nm-connection-editor
[1] 45012
[root@server ~]#
即可打开【网络连接】图形化界面窗口,这个窗口显示了当前具有的连接,单击左下角的【+】按钮,添加一个连接。
在【选择连接类型】对话框中选择“以太网”,单击【创建】按钮,如图11-3所示。
打开【编辑ens160】对话框,在【常规】选项卡下的【连接名称】文本框中输入“ens160”,这个是创建连接的名称,名称可以随意取,不必和网卡名一致。在常规中,选中【自动以优先级连接】复选框,然后选择【以太网】选项卡,如图11-4所示。
在【设备】下拉列表中选择“ens160”,意思就是为网卡ens160创建一个连接,名称为ens160。选择【IPv4设置】选项卡,如图11-5所示。
这里设置的是连接ens160是通过什么方式获取IP,可以是手动设置也可以通过DHCP获取。在【方法】下拉列表中选择“手动”,单击下面的【添加】按钮,输入IP地址、子网掩码、网关、DNS等。然后单击右下角的【保存】按钮,如图11-6所示。
如果要为ens160配置第二个IP,点击图11-6右侧的添加,然后输入IP即可。之后就可以看到已经创建了一个连接ens160,如图11-7所示。
在另外的一个终端中,输入“ifconfig ens160”,如下所示。
[lduan@server ~]$ ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.100 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::5cea:baf4:d0a6:930b prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 41293 bytes 7450588 (7.1 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 29131 bytes 2651574 (2.5 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[lduan@server ~]$
可以看到,这里的IP为192.168.26.100,就是我们刚刚设置的IP。
也可以通过查看连接ens160的属性也能看到IP信息。
[lduan@server ~]$ nmcli connection show ens160 | grep ipv4
ipv4.method: manual
ipv4.dns: 192.168.26.2
ipv4.dns-search: --
ipv4.dns-options: --
ipv4.dns-priority: 0
ipv4.addresses: 192.168.26.100/24
ipv4.gateway: 192.168.26.2...输出...
[lduan@server ~]$
这里可以看到,IP、网关、DNS等信息。
因为这个连接是新创建的,所以创建好之后是可以立即生效。
下面介绍如何修改已经存在连接的IP。
选中“ens160”,单击下方的齿轮按钮,如图11-8所示。
单击【IPv4设置】选项卡,将IP地址设置为192.168.26.101,单击【保存】按钮,如图11-9所示。
在终端中查看ens160的IP。
[lduan@server ~]$ ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.100 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::5cea:baf4:d0a6:930b prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 41316 bytes 7452807 (7.1 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 29145 bytes 2653538 (2.5 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[lduan@server ~]$
可以看到,IP地址仍然是192.168.26.100,并没有变成192.168.26.101。
因为这个IP不是在创建连接时指定的,而是后期修改连接时指定的,所以这个IP不会生效。
如果让其生效,需要执行“nmcli device reapply 设备名”命令。
[lduan@server ~]$ nmcli device reapply ens160
成功重新应用连接到设备 "ens160"。
[lduan@server ~]$
[lduan@server ~]$ ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.101 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::5cea:baf4:d0a6:930b prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 41320 bytes 7453429 (7.1 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 29158 bytes 2655659 (2.5 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[lduan@server ~]$
这里可以看到,现在IP地址已经变成了192.168.26.101了。
删除连接的操作如下。
选中连接名,单击下面的“-”按钮,在弹出的界面单击【删除】按钮即可,如图11-10所示。
如果打不开上述图形化界面,可以在终端中输入“nmtui-edit”命令后按【Enter】键,然后按【Tab】键选中【添加】按钮,然后按【Enter】键,如图11-11所示。
在【新建连接】界面选中“以太网”,按【Tab】键选中【创建】按钮,然后按【Enter】键,如图11-12所示。
在【编辑连接】界面的【配置集名称】中输入“ens160”,这个是设置连接名的;在下方的【设备】中输入“ens160”。按【Tab】键选择“IPv4配置”后的【显示】按钮,然后按【Enter】键,如图11-13所示。
在“IPv4配置”后面将获取IP方法设置为“手动”,按【Tab】键选择“地址”后的【添加】按钮,然后按【Enter】键,如图11-14所示。
这里输入相关的网络信息,如图11-15所示。
然后按多次【Tab】键,直到看到下面的界面,这里确保【自动连接】前面有“X”,即选中状态,如果没有选中,则按空格键选中,再按【Tab】键选择【确定】按钮,然后按【Enter】键,如图11-16所示。
返回到初始界面,如图11-17所示。
图11-17 新建连接
然后在第二个终端中查看IP信息。
[lduan@server ~]$ ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.100 netmask 255.255.255.0 broadcast 192.168.26.255inet6 fe80::4eab:5208:f692:1150 prefixlen 64 scopeid 0x20<link>ether 00:0c:29:c4:5b:02 txqueuelen 1000 (Ethernet)RX packets 41383 bytes 7464236 (7.1 MiB)RX errors 0 dropped 0 overruns 0 frame 0TX packets 29218 bytes 2664239 (2.5 MiB)TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0[lduan@server ~]$
可以看到,此处IP已经被设置为了192.168.26.100了。
如果要修改IP,在初始界面选中连接,然后选中【编辑】按钮,按【Enter】键后,如图11-18所示,就可以正常修改IP了。记得修改之后需要执行“nmcli device reapply ens160”命令让其生效。
删除连接,先选中连接名,按【Tab】键,选中【删除】按钮,按【Enter】键。然后会有一个弹窗,按【Tab】键选中【删除】按钮,并按【Enter】键。这种删除连接的方式是最简单的。
11.4 通过配置文件修改
网卡连接的配置文件在/etc/sysconfig/network-scripts/,格式为“ifcfg-连接名”,可以看到连接都被删除了,现在没有任何连接。
[root@server ~]# nmcli connection [root@server ~]#
下面为网卡ens160创建一个连接,连接名为ens160。
创建一个文件/etc/sysconfig/network-scripts/ifcfg-ens160,内容如下。
[root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160
DEVICE=ens160
NAME=ens160
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.26.100
NETMASK=255.255.255.0
GATEWAY=192.168.26.2
DNS1=192.168.26.2
[root@server ~]#
这里字段的意思如下。
(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。
因为这个配置文件是新创建的,所以需要重新加载一下才能生效,命令如下。
[root@server ~]# nmcli connection reload
[root@server ~]#
然后查看下网卡ens160的IP。
[lduan@server ~]$ ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.100 netmask 255.255.255.0 broadcast 192.168.26.255...输出...
[lduan@server ~]$
可以看到,现在是已经生效了的。
记住:因为这个文件是新创建的,所以只要执行“nmcli connection reload”命令即可生效。
下面开始修改IP,把配置文件修改为如下内容。
[root@server ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens160
DEVICE=ens160
NAME=ens160
ONBOOT=yes
BOOTPROTO=none
IPADDR=192.168.26.101
NETMASK=255.255.255.0
GATEWAY=192.168.26.2
DNS1=192.168.26.2
[root@server ~]#
修改之后执行nmcli connection reload命令。
[root@server ~]# nmcli connection reload
[root@server ~]# ifconfig ens160
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.168.26.100 netmask 255.255.255.0 broadcast 192.168.26.255...输出...
[root@server ~]#
修改之后发现单执行“nmcli connection reload”命令是没用的,还要执行“nmcli device reapply ens160”命令。
总结:
(1)新创建好连接的配置文件之后,直接nmcli connection reload即可生效。
(2)修改已经存在配置文件,之后需要执行nmcli connection reload和nmcli device reapply ens160才能让修改生效。
11.5 命令行管理
在命令中查看现有连接,命令如下。
[root@server ~]# nmcli connection
NAME UUID TYPE DEVICE
ens160 ea74cf24-c2a2-ecee-3747-a2d76d46f93b ethernet ens160
[root@server ~]#
删除连接的命令如下所示。
nmcli connection delete 连接名
现在把连接ens160删除,命令如下。
[root@server ~]# nmcli connection delete ens160
成功删除连接 "ens160" (ea74cf24-c2a2-ecee-3747-a2d76d46f93b)。
[root@server ~]#
[root@server ~]# nmcli connection [root@server ~]#
命令行添加连接的命令是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:设置连接开机自动生效。
下面创建一个为网卡ens160创建一个连接名称为ens160,类型为以太网。
[root@server ~]# nmcli connection add type ethernet con-name ens160 ifname ens160 ipv4.method manual ipv4.addresses 192.168.26.100/24 ipv4.gateway 192.168.26.2 ipv4.dns 192.168.26.2 autoconnect yes
连接 "ens160" (e84786f3-db2d-46b9-8798-57a89beba56b) 已成功添加。
[root@server ~]#
这里命令比较长,可以想象一下在图形化界面中指定的内容。
(1)类型为以太网。
(2)连接名是ens160。
(3)为哪张网卡用ifname指定。
此处创建好之后,可以查看下连接属性,命令如下。
[root@server ~]# nmcli connection show ens160 | grep ipv4
ipv4.method: manual
ipv4.dns: 192.168.26.2
ipv4.dns-search: --
ipv4.dns-options: --
ipv4.dns-priority: 0
ipv4.addresses: 192.168.26.100/24
ipv4.gateway: 192.168.26.2...输出...
[root@server ~]#
左侧是此连接的属性,右侧是具体的值。
如果要修改配置,只要修改左侧对应的属性即可,语法如下。
nmcli connection modify 连接名 属性1 值1 属性2 值2 ...
这里的属性跟前面创建连接用的属性一致。
现在把ens160的IP改为192.168.26.101,命令如下。
[root@server ~]# nmcli connection modify ens160 ipv4.addresses 192.168.26.101/24
[root@server ~]#
[root@server ~]# nmcli device reapply ens160
成功重新应用连接到设备 "ens160"。
[root@server ~]#
一定要记得,修改之后要执行nmcli device reapply ens160让所做修改生效。如果不是修改的配置文件则不必执行nmcli connection reload。
如果要给ens160再额外添加一个IP地址192.168.26.100/24,可以用如下命令。
[root@server ~]# nmcli connection modify ens160 ifname ens160 ipv4.method manual +ipv4.addresses 192.168.26.100/24
[root@server ~]# nmcli device reapply ens160
成功重新应用连接到设备 "ens160"。
[root@server ~]#
这里在添加IP地址时,ipv4.addresses前面一定要有个加号"+“,写作”+ipv4.addresses"表示额外添加一个IP,如果没有这个+,会覆盖原有的IP。
查看ens160的IP信息。
[root@server ~]# ip addr show ens160
2: ens160: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000link/ether 00:0c:29:c4:5b:02 brd ff:ff:ff:ff:ff:ffinet 192.168.26.101/24 brd 192.168.26.255 scope ... ens160valid_lft forever preferred_lft foreverinet 192.168.26.100/24 brd 192.168.26.255 scope ... ens160valid_lft forever preferred_lft forever
[root@server ~]#
可以看到,ens160现在是有两个IP地址的。
类似的,如果要删除ens160的某个IP地址可以写作"-ipv4.addresses",例如,要删除ens160的192.168.26.100这个IP地址,按如下命令。
[root@server ~]# nmcli connection modify ens160 ifname ens160 ipv4.method manual -ipv4.addresses 192.168.26.100/24
[root@server ~]# nmcli device reapply ens160
成功重新应用连接到设备 "ens160"。
[root@server ~]#
在RHEL8中不能通过systemctl restart network来重启网络,不过安装network-scripts之后就可以了,关于软件包的安装后续的章节会讲解。
11.6 主机名的设置
每台主机都会有自己的主机名,默认主机名是localhost.localdomain。不过并不建议使用这个主机名。查看主机名的命令是hostname。
[root@server ~]# hostname
server.rhce.cc
[root@server ~]# hostname -s
www
[root@server ~]#
hostname 加上-s选项可以看到短主机名,即没有域名的主机名。
设置主机名的语法如下。
hostnameCtrl set-hostname 主机名
下面把主机名设置为www.rhce.cc。
[root@server ~]# hostnameCtrl set-hostname www.rhce.cc
[root@server ~]# hostname
www.rhce.cc
[root@server ~]#
这个命令修改主机名,是永久生效的,因为会写入配置文件中。
[root@server ~]# cat /etc/hostname
www.rhce.cc
[root@server ~]#
这里主机名虽然改为www.rhce.cc了,但是大家可以看到提示符中的主机名仍然是server.rhce.cc。打开一个新的终端就可以看到主机名已经是www了。
再次把主机名设置为server.rhce.cc。
[root@server ~]# hostnameCtrl set-hostname server.rhce.cc
[root@server ~]#
不过此时在当前环境中是不能把server.rhce.cc解析成IP地址的,所以需要编辑/etc/hosts,把主机名和IP的对应关系写进入,格式如下。
IP 长主机名 短主机名
修改/etc/hosts,内容如下。
[root@server ~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.26.101 server.rhce.cc server
[root@server ~]#
然后使用ping命令ping“server.rhce.cc”或“ping server”。
[root@server ~]# ping -c1 server.rhce.cc
PING server.rhce.cc (192.168.26.101) 56(84) bytes of data.
64 bytes from server.rhce.cc (192.168.26.101): icmp_seq=1 ttl=64 time=0.051 ms--- server.rhce.cc ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.051/0.051/0.051/0.000 ms
[root@server ~]#
可以看到,已经把server.rhce.cc解析成了192.168.26.101了。
作业
- 下面哪个几个IP是同一个网段的
a. 192.168.26.0/24
b. 192.188.26.0/24
c. 192.168.26.0/24
d. 192.168.27.0/24
2.下面哪个地址不是私有IP?
a. 10.10.10.10
b. 169.254.11.23
c. 172.19.18.17
d. 192.168.192.192
3下面哪个命令能显示所有网卡的 所有IP?
a. ifconfig -all
b. ipconfig
c. ip link show
d. ip addr show
-
天下文章一大抄,使用nmcli命令比较复杂,通过查询如下哪个选项的man page,可以获取具体用法的例子?
a. nmcli
b. nmcli-examples
c. nm-config
d. nm-tools -
在网卡配置文件中,要设置网卡能开机自动启动,加的选项是?
a. BOOTON=yes
b. AUTOBOOT=yes
c. BOOTON=true
d. ONBOOT=yes
6.网卡ens160上配置了多个IP,用哪个命令能看到所有的IP?
a. ifconfig -a
b. ifconfig ens160 -a
c. ip addr show ens160
d. ip a
7.“要是想正常连接到互联网,其实DNS服务器不是必须要配置的,主要是网关配置正确就可以了”,这句话:
a. 正确
b. 不正确
8想通过修改配置文件的方式修改主机名,请问该修改哪个文件?
a. /etc/sysconfig/network
b. /etc/sysconfig/hostname
c. /etc/hostname
d. /etc/defaults/hostname
9.请为网卡ens160再额外添加一个IP 192.168.X.180/24(这里X根据自己事情情况来写),使得ens160有2个IP。
- 请用2种方法查找到ens160的多个IP。
相关文章:

RHCE9学习指南 第11章 网络配置
11.1 网络基础知识 一台主机需要配置必要的网络信息,才可以连接到互联网。需要的配置网络信息包括IP,子网掩码,网关和DNS。 11.1.1 IP地址 在计算机中对IP的标记使用的是32bit的二进制,例如, 11000000 10101000 00…...

Qt如何在控制台项目中使用opencv打开视频
Qt如何在控制台项目中使用opencv打开视频? 重要代码: 1、在pro文件中这样设置: QT - gui QT core widgets serialport 2、不要继承和使用:QCoreApplication #include pro文件: cpp QT - gui QT core widgets seria…...

Node.js 默认包管理器 npm 详解
目录 npm 概念 npm 命令 npm init npm install npm update npm uninstall npm search npm run other npm 安装 yarn npm 安装 yarn 和 npm 安装项目依赖 websocket 本质区别 npm 概念 npm(Node Package Manager)是一个用于管理 JavaScript 包…...

vue利用深拷贝解决修改不能取消的问题
vue利用深拷贝解决修改不能取消的问题 在对某数据进行修改时考虑还需要进行“确认”、“取消”操作,那么在取消时就需要返回保留的数据内容,那么如何将原有数据保留一份则是关键性问题。 显然修改值不能直接进行原值的赋值操作,因为这样无法取…...

MATLAB - 使用 YOLO 和基于 PCA 的目标检测,对 UR5e 的半结构化智能垃圾箱拣选进行 Gazebo 仿真
系列文章目录 前言 本示例展示了在 Gazebo 中使用 Universal Robots UR5e cobot 模拟智能垃圾桶拣选的详细工作流程。本示例提供的 MATLAB 项目包括初始化、数据生成、感知、运动规划和积分器模块(项目文件夹),可创建完整的垃圾桶拣选工作流…...

个性化定制的知识付费小程序,为用户提供个性化的知识服务,知识付费saas租户平台
明理信息科技知识付费saas租户平台 在当今数字化时代,知识付费已经成为一种趋势,越来越多的人愿意为有价值的知识付费。然而,公共知识付费平台虽然内容丰富,但难以满足个人或企业个性化的需求和品牌打造。同时,开发和…...

基于flask和echarts的新冠疫情实时监控系统源码+数据库,后端基于python的flask框架,前端主要是echarts
介绍 基于flask和echarts的新冠疫情实时监控系统 软件架构 后端基于python的flask框架,前端主要是echarts 安装教程 下载到本地,在python相应环境下运行app.py,flask项目部署请自行完成 使用说明 flaskProject文件夹中 app.py是flask项目主运行文…...

总结js中遍历对象属性的方法
方法介绍 1、 forin循环:遍历对象自身的和原型链上的可枚举属性。 2、Object.getOwnPropertySymbols()方法:返回一个数组,包含对象自身的所有Symbol类型的属性。 3、 Object.getOwnPropertyNames()方法:返回一个数组࿰…...

编写fastapi接口服务
FastAPI是一个基于 Python 的后端框架,该框架鼓励使用 Pydantic 和 OpenAPI (以前称为 Swagger) 进行文档编制,使用 Docker 进行快速开发和部署以及基于 Starlette 框架进行的简单测试。 step1:安装必要库 pip install fastapi uvicorn st…...

RasaGPT对话系统的工作原理
RasaGPT 结合了 Rasa 和 Langchain 这 2 个开源项目,当超出 Rasa 现有意图(out_of_scope)的时候,就会执行 ActionGPTFallback,本质上就是利用 Langchain 做了一个 RAG,调用 LLM API。RasaGPT 涉及的技术栈比较多而复杂,…...

C++设计模式 #7 工厂方法(Factory Method)
“对象创建”模式 通过“对象创建”模式绕开new,来避免对象创建(new)过程中所导致的紧耦合(依赖具体类),从而支持创建的稳定。它是接口抽象之后的第一步工作。 动机 在软件系统中,经常面临着创…...

信息网络协议基础-接入网技术
文章目录 概述***基于ATM架构虚电路PVC和SVC信元格式为什么信元格式由AAL决定?网络架构传统电信网络:点对点链路PPP协议协议内容消息过程多协议封装功能电话网接入Internet(DSL 数字用户线路)主要接入技术ADSL关键技术DMTDSLAM体系结构PPPOE帧格式过程特点局域网定义参考模型L…...

springboot 自动装配原理
在理解springboot自动装配之前需要了解spring的Configuration原理和Conditional两个注解原理。可以看下以前写的这两篇文章 spring 源码阅读之Configuration解析 spring使用Conditional进行条件装配 spring的SPI机制之使用SpringFactoriesLoader加载服务实现 SpringBootApp…...

前端---表格标签
1. 表格的结构 表格是由行和列组成,好比一个excel文件 2. 表格标签 <table>标签:表示一个表格 <tr>标签:表示表格中的一行 <td>标签:表示表格中的列<th>标签:表示表格中的表头 示例代码: &l…...

【软件工程】可执行文件和数据分离
一、概述 可执行文件和数据分离是一种软件设计策略,旨在将程序代码和程序使用的数据分离存储。这种方法通常用于提高软件的模块化程度和灵活性,以及方便软件的管理和维护。 在可执行文件和数据分离中,程序代码通常以可执行文件的形式存储&a…...

Linux dirs命令
Linux dirs命令用于显示目录记录。 显示目录堆叠中的记录。 语法 dirs [/-n -l]参数: n 显示从左边算起第n笔的目录。-n 显示从右边算起第n笔的目录。-l 显示目录完整的记录。 实例 列出"/home/cc/Ruijie"里所有内容的详细信息。可用如下命令。 dir…...

有什么好用的C/C++源代码混淆工具?
有什么好用的C/C源代码混淆工具? 开始使用ipaguard 前言 iOS加固保护是直接针对ios ipa二进制文件的保护技术,可以对iOS APP中的可执行文件进行深度混淆、加密。使用任何工具都无法逆向、破解还原源文件。对APP进行完整性保护,防止应用…...

iOS设备信息详解
文章目录 ID 体系iOS设备信息详解IDFA介绍特点IDFA新政前世今生获取方式 IDFV介绍获取方式 UUID介绍特点获取方式 UDID介绍获取方式 OpenUDID介绍 Bundle ID介绍分类其他 IP地址介绍获取方式 MAC地址介绍获取方式正常获取MAC地址获取对应Wi-Fi的MAC地址 系统版本获取方式 设备型…...

如何使用支付宝沙箱环境支付并公网调用sdk创建支付单服务
文章目录 1.测试环境2.本地配置2. 内网穿透2.1 下载安装cpolar内网穿透2.2 创建隧道3. 测试公网访问4. 配置固定二级子域名4.1 保留一个二级子域名4.2 配置二级子域名5. 使用固定二级子域名进行访问 1.测试环境 MavenSpring bootJdk 1.8 2.本地配置 获取支付宝支付Java SDK,…...

[EFI]Dell Latitude-7400电脑 Hackintosh 黑苹果efi引导文件
硬件型号驱动情况主板 Dell Latitude-7400 处理器Intel Core i7-8665U已驱动内存16GB DDR4 RAM已驱动硬盘Toshiba KIOXIA 512GB SSD已驱动显卡Intel UHD 620 Graphics已驱动声卡Realtek ALC256已驱动有线网卡 无 无无线网卡蓝牙Intel Wireless-AC 9560已驱动 支持系统版本 maco…...

用芯片SIC8833可开发电子秤方案
SIC8833作为一款高性能的电子秤方案芯片,这款芯片是一个带24bitADC的8位RISC MCU,内置8k16位OTP程序存储器。具体24位双向I/O口的特性,广泛应用于电子衡器和精密测量及控制系统,能满足用户的不同需求和应用场景。 以下是电子秤方案…...

【Qt-QFile-QDir】
Qt编程指南 ■ Stream■ QTextStream■ QDataStream ■ QDial■ QDir■ QFile■■ ■ Stream ■ QTextStream /* 获取文件的路径 */ QString fileName QFileDialog::getOpenFileName(this);/* 指向文件 */ file.setFileName(fileName);/* 判断文件是否存在 */ if (!file.exi…...

设计模式之-单列设计模式,5种单例设计模式使用场景以及它们的优缺点
系列文章目录 设计模式之-6大设计原则简单易懂的理解以及它们的适用场景和代码示列 设计模式之-单列设计模式,5种单例设计模式使用场景以及它们的优缺点 设计模式之-3种常见的工厂模式简单工厂模式、工厂方法模式和抽象工厂模式,每一种模式的概念、使用…...

Android 13 - Media框架(25)- OMXNodeInstance(二)
上一节我们了解了 OMXNodeInstance 的创建过程,以及 IOmx 服务和 OMXNodeInstance、OMX组件之间的联系。接下来我们将一起了解 ACodec 是如何通过 OMXNodeInstance 这个中间层进行端口定义设置,以及端口Buffer分配的。 OMXNodeInstance 的代码还是比较长…...

生物系统学中的进化树构建和分析R工具包V.PhyloMaker2的介绍和详细使用
V.PhyloMaker2是一个R语言的工具包,专门用于构建和分析生物系统学中的进化树(也称为系统发育树或phylogenetic tree)。以下是对V.PhyloMaker2的一些基本介绍和使用说明: 论文介绍:V.PhyloMaker2: An updated and enla…...

XStream 反序列化漏洞 CVE-2021-39144 已亲自复现
XStream 反序列化漏洞 CVE-2021-39144 已亲自复现 漏洞名称漏洞描述影响版本 漏洞复现环境搭建 修复建议总结 漏洞名称 漏洞描述 在Unmarshalling Time处包含用于重新创建前一对象的类型信息。XStream基于这些类型的信息创建新实例。攻击者可以控制输入流并替换或注入对象&am…...

深入剖析LinkedList:揭秘底层原理
文章目录 一、 概述LinkedList1.1 LinkedList简介1.2 LinkedList的优点和缺点 二、 LinkedList数据结构分析2.1 Node节点结构体解析2.2 LinkedList实现了双向链表的原因2.3 LinkedList如何实现了链表的基本操作(增删改查)2.4 LinkedList的遍历方式 三、 …...

计算机网络复习-OSI TCP/IP 物理层
我膨胀了,挂我啊~ 作者简介: 每年都吐槽吉师网安奇怪的课程安排、全校正经学网络安全不超20人情景以及割韭菜企业合作的FW,今年是第一年。。 TCP/IP模型 先做两道题: TCP/IP协议模型由高层到低层分为哪几层: 这题…...

虚拟机服务器中了lockbit2.0/3.0勒索病毒怎么处理,数据恢复应对步骤
网络技术的不断发展也为网络威胁带来了安全隐患,近期,对于许多大型企业来说,许多企业的虚拟机服务器系统遭到了lockbit2.0/3.0勒索病毒攻击,导致企业所有计算机系统瘫痪,无法正常工作,严重影响了企业的正常…...

【MATLAB】 RGB和YCbCr互转
前言 在视频、图像处理领域经常会遇到不同色域图像的转换,比如RGB、YUV、YCbCr色域间的转换,这里提供一组转换公式,供大家参考。 色彩模型 RGB RGB色彩模型是一种用于表示数字图像的颜色空间,其中"RGB"代表红色&…...