目录
1.网络基础知识
1.1 IP地址
1.2 网关
1.3 DNS
2 查看网络信息
2.1 查看网关信息
2.3 查看DNS
3.连接
一台主机需要配置必要的网络信息,才可以连接到互联网。需要的配置网络信息包括IP、子网掩码、网关和 DNS。
在计算机中对IP的标记使用的是32bit的二进制,
例如:11000000 10101000 00011010 01100100
这里共有32位由1和0组成的二进制数字,这样的地址对于人类来说并不好记忆,所已用3个 点把这32位的二进制隔成4个部分,每个部分8个二进制数字11000000 .10101000 .00011010 .01100100然后我们把每个部分的二进制转换成十进制之后,IP的格式就是下面这样的:192.168.26.100这种对IP的表示方法叫作“点分十进制”。
我们把一个网络中的网关理解为一个城市中的高铁站,如果我们想从一个城市去往另外一个城市,需要先到高铁站,坐上高铁之后,高铁会把我们送往另外一个城市。同样地,如果一个网络中的主机要发送一个数据包去往另外一个网络,则需要先把这个数据包发送到网关,然后由网关把这个数据包转发到另外一个网络所以,如果我们没有给一台机器配置网关,则这台机器的数据包是不能和其他网络的主机进行通信的,只能和同一个网段的数据包通信。
注意:
给机器配置的IP和网关必须是属于同一个网段的。在我们的练习环境中,本书所使用的网络是
192.168.26.0/24网段,我们需要把网关设置为102168262。如果读者所使用的网络是
192.168.X.0/24网段,则需要把网关设置为192.168.26.X.2,这里的X是一个数字。
两台主机通信时依赖的是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是一个数字。
查看RHEL的网络信息可以通过 ifconfig 命令,命令如下
这里查看的是所有活跃网卡的信息,如果想查看不管是沾跃还是不沾跃网卡的信息,以通过ifconfig -a来查看。如果只想查看某张网卡的信息,可以通过“ifconfig 网卡名”来查看。例如,只查看ens160的网络信息这里ens160是网卡名),命令如下。
[root@RHEL8 ~]# ifconfig ens160
ens160: flags=4163 mtu 1500
inet 192.168.103.14 netmask 255.255.255.0 broadcast 192.168.103.255
inet6 fe80::20c:29ff:fe5b:506b prefixlen 64 scopeid 0x20
ether 00:0c:29:5b:50:6b txqueuelen 1000 (Ethernet)
RX packets 399 bytes 47342 (46.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 306 bytes 30883 (30.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
这里inet后面跟的是此网卡的IP,ether后面跟的是此网卡的MAC地址
也可以通过 "ip address show 网卡名"来查看,例如,查看ens160网卡的网络信息,命令如下。
[root@RHEL8 ~]# ip address show ens160
2: ens160: mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:0c:29:5b:50:6b brd ff:ff:ff:ff:ff:ff
inet 192.168.103.14/24 brd 192.168.103.255 scope global noprefixroute ens160
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe5b:506b/64 scope link noprefixroute
valid_lft forever preferred_lft forever
注:这里address可以简写为addr 或a,show可以简写为sh
如果要查看网关信息的话,就可以使用"route -n" 命令,这里的-n是为了防止反向解析,即防止把IP解析成主机名,命令如下
[root@RHEL8 ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 192.168.103.2 0.0.0.0 UG 100 0 0 ens160
192.168.103.0 0.0.0.0 255.255.255.0 U 100 0 0 ens160
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
可以看到,我的网关是192.168.103.2
查看DNS,所使用的DNS记录在/etc/resolv.conf中。
[root@RHEL8 ~]# cat /etc/resolv.conf
# Generated by NetworkManager
nameserver 202.96.128.86
nameserver 119.29.29.29
在nameserver后面指定的就是当前默认使用的DNS。
什么是连接呢?为了更好地理解,这里举一个例子。我们在一张标签上写上IP、子网掩码、网关、DNS等信息,然后把这个标签贴到网卡上,那么这张网卡就有这些网络信息了,如图11-1所示。 这个标签就叫作连接(connection),给网卡配置IP,只要给这个网卡建立一个连接就可以了
通过nmcli connection或简写为nmcli conn来查看当前连接,命令如下。
[root@RHEL8 ~]# nmcli connection
NAME UUID TYPE DEVICE
ens160 9ee88de0-5cb6-44eb-9c82-07949077efed ethernet ens160
virbr0 dc0eec99-aa8f-4dfd-9ce5-b7b543f586fe bridge virbr0
这里 DEVICE 对应的是网卡名,NAME对应的是连接名。整句的意思就是网卡ens160存在一个连接,名称为ens160
查看连接的具体属性,可以通过“nmcli connection show连接名”来查看。下面查看ens160属性中与IPv4相关的条目,命令如下。
[root@RHEL8 ~]# nmcli connection
NAME UUID TYPE DEVICE
ens160 9ee88de0-5cb6-44eb-9c82-07949077efed ethernet ens160
virbr0 dc0eec99-aa8f-4dfd-9ce5-b7b543f586fe bridge virbr0
[root@RHEL8 ~]# 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.103.14/24
ipv4.gateway: 192.168.103.2
ipv4.routes: --
ipv4.route-metric: -1
ipv4.route-table: 0 (unspec)
ipv4.routing-rules: --
ipv4.ignore-auto-routes: 否
ipv4.ignore-auto-dns: 否
ipv4.dhcp-client-id: --
ipv4.dhcp-iaid: --
ipv4.dhcp-timeout: 0 (default)
ipv4.dhcp-send-hostname: 是
ipv4.dhcp-hostname: --
ipv4.dhcp-fqdn: --
ipv4.dhcp-hostname-flags: 0x0(none)
ipv4.never-default: 否
ipv4.may-fail: 是
ipv4.required-timeout: -1 (default)
ipv4.dad-timeout: -1 (default)
ipv4.dhcp-vendor-class-identifier: --
ipv4.dhcp-reject-servers: --
[root@RHEL8 ~]#
可以看到,ens160获取IP的方式是 manual。
这个就是连接,后续我会把如果把连接删除后的几种恢复方式给发布出来。