一、Linux 网络配置原理图(三种方式)
在使用 VMWare 安装 Linux 系统是,网络连接有下面几种方式,我们选择的是 NAT 模式,另外还有桥接模式,仅主机模式,下面详解一下几种连接模式:
1、桥接模式
桥接模式效果:通过桥接,我们让 vm 虚拟机和真正主机 pc3 处在了一片局域网下,vm 虚拟机可以访问 pc123 也可以外网(Internet),同时 pc123 也可以访问 vm 虚拟机。
好处:
- vm 虚拟机可以上外网
- 还能让 pc 访问
坏处
- 这样的连接安全性较低,我们建立虚拟机可能都是要进行私密开发活动之类的,区域网内的主机都能访问,导致安全性大大降低。
- 会分配第一个局域网的 IP,如果多创建几个虚拟机,可能会把局域网的 IP 用完
实现原理:pc3 是我们的电脑,我们在电脑的 VMware 创建了虚拟机,首先 pc3 会在网卡上创建出一个虚拟网桥,为了能连接更多的 vm 虚拟机我们还需要创建一个虚拟交换机,此时我们连接的线路就可以理解为:路由器->vm 虚拟机。
2、仅主机模式
仅主机模式效果:我们让所有的 vm 虚拟机处在了一片局域网下,vm 虚拟机之间可以访问也可以访问 pc3,但不可以访问外网(Internet),同时除了 pc3 外其他主机都不可以访问 vm 虚拟机。
好处是 vm 虚拟机能和 pc3 主机相互访问,其他无法访问 vm 虚拟主机,此时 vm 虚拟机形成了一个非常私密的网络,安全性非常高;坏处其他主机无法再访问 vm 虚拟机,虚拟机也无法再访问外网。主机无法再访问 vm 虚拟机,虚拟机也无法再访问外网。
实现原理:pc3 是我们的电脑,我们在电脑的 VMware 创建了虚拟机,首先 pc3 会在网卡上创建出一个虚拟出一个类似于交换机功能的服务器,此时通过这条线路不可以连接到外网(Internet),它的作用是类似交换机的作用,它还能分配 ip 地址等其他功能。同时我们还要再创建一个虚拟网卡,这样我们 vm 虚拟机就能和 pc3 主机进行相互访问了。
3、NAT 模式
NAT 模式效果:我们让所有的 vm 虚拟机处在了一片局域网下,vm 虚拟机之间可以访问也可以访问 pc3,也可以访问外网(Internet),同时除了 pc3 外其他主机都不可以访问 vm 虚拟机。
好处是 vm 虚拟机可以上外网,还能和 pc3 主机相互访问,其他无法访问 vm 虚拟主机,这样既能访问到外网,还不能让其他主机访问,大大提高了安全性。
坏处其他主机无法再访问 vm 虚拟机。
实现原理:pc3 是我们的电脑,我们在电脑的 VMware 创建了虚拟机,首先 pc3 会在网卡上创建出一个虚拟出一个类似于路由器的 NAT 服务器,此时通过这条线路可以连接到外网(Internet)。同时我们还要再创建一个虚拟网卡,这样我们 vm 虚拟机就能和 pc3 主机进行相互访问了。
三种连接方式:
https://blog.csdn.net/LWJLWJ_/article/details/127026846
https://zhuanlan.zhihu.com/p/547443106?utm_id=0
https://blog.csdn.net/S_ZaiJiangHu/article/details/128010473
二、查看并配置网络 IP 和网关
(1)查看虚拟网络编辑器
(2)修改虚拟网卡 Ip
(3)查看网关
(4)查看 windows 环境的中 VMnet8 网络配置
使用 ipconfig 指令查看:
(5)查看 linux 的网络配置 ifconfig
基本语法
ifconfig (功能描述:显示所有网络接口的配置信息)
查看当前网络 IP
三、ping 测试主机之间网络连通性
1、基本语法
ping 目的主机 (功能描述:测试当前服务器是否可以连接目的主机)
2、应用实例
测试当前服务器是否可以连接百度
四、Linux 网络环境配置
1、第一种方法(自动获取)
说明:登陆后,通过界面的来设置自动获取 ip
特点:linux 启动后会自动获取 IP,缺点是每次自动获取的 ip 地址可能不一样
centOS7:
centOS6:
2、第二种方法(指定 ip)
说明:直接修改配置文件来指定 IP,并可以连接到外网(推荐)
(1)查看 IP 配置文件
CentOS6:
vim /etc/sysconfig/network-scripts/ifcfg-eth0CentOS7:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
CentOS6:
CentOS7:
以下画圈的项必须修改,有值的按照下面的值修改,没有该项的要增加
文件说明:
TYPE="Ethernet" #网络类型(通常是 Ethemet)
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static" #IP 的配置方法[none|static|bootp|dhcp](引导时不使用协议|静态分配 IP|BOOTP 协议|DHCP 协议)
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="e83804c1-3257-4584-81bb-660665ac22f6" #随机 id
DEVICE="ens33" #接口名(设备,网卡)
ONBOOT="yes" #系统启动的时候网络接口是否有效(yes/no)
#IP 地址
IPADDR=192.168.1.100
#网关
GATEWAY=192.168.1.2
#域名解析器
DNS1=192.168.1.2
修改后
编辑完后,按键盘 esc ,然后输入 :wq 回车即可
4、执行 service network restart 重启网络
5、修改 IP 地址后可能会遇到的问题
(1)物理机能 ping 通虚拟机,但是虚拟机 ping 不通物理机,一般都是因为物理机的防火墙问题,把防火墙关闭就行
(2)虚拟机能 Ping 通物理机,但是虚拟机 Ping 不通外网,一般都是因为 DNS 的设置有问题
(3)虚拟机 Ping www.baidu.com 显示域名未知等信息,一般查看 GATEWAY 和 DNS 设置是否正确
(4)如果以上全部设置完还是不行,需要关闭 NetworkManager 服务
systemctl stop NetworkManager 关闭
systemctl disable NetworkManager 禁用
(5)如果检查发现 systemctl status network 有问题 需要检查 ifcfg-ens33
四、设置主机名和 hosts 映射
1、修改主机名称
为了方便记忆,可以给 linux 系统设置主机名, 也可以根据需要修改主机名
(1)基本语法
hostname (功能描述:查看当前服务器的主机名称)
(2) 案例实操
查看当前服务器主机名称
hostname
如果感觉此主机名不合适,我们可以进行修改。
CentOS6 通过编辑/etc/sysconfig/network 文件
centOS7 通过编辑/etc/hostname 文件
vim /etc/sysconfig/network
vim /etc/hostname
修改完成后重启生效。
2、修改 hosts 映射文件
如何通过主机名能够找到(比如 ping) 某个 linux 系统?
通过主机名映射的方式。
(1)修改 linux 的主机映射文件(hosts 文件)
通过主机名的方式连接比较简单方便,不用刻意记 ip 地址。
打开/etc/hosts
vim /etc/hosts
添加如下内容
192.168.2.100 hadoop100
192.168.2.101 hadoop101
192.168.2.102 hadoop102
192.168.2.103 hadoop103
192.168.2.104 hadoop104
192.168.2.105 hadoop105
重启设备,重启后,查看主机名,已经修改成功
(2)修改 windows 的主机映射文件(hosts 文件)
进入 C:\Windows\System32\drivers\etc\hosts 路径
拷贝 hosts 文件到桌面
打开桌面 hosts 文件并添加如下内容
192.168.2.100 hadoop100
192.168.2.101 hadoop101
192.168.2.102 hadoop102
192.168.2.103 hadoop103
192.168.2.104 hadoop104
192.168.2.105 hadoop105
将桌面 hosts 文件覆盖 C:\Windows\System32\drivers\etc 路径 hosts 文件
后续远程登录就可以使用主机名进行连接
3、主机名解析过程分析(Hosts、DNS)
(1) hosts 是什么
一个文本文件,用来**记录 IP 和 Hostname(主机名)**的映射关系
(2) DNS
DNS,就是 Domain Name System 的缩写,翻译过来就是域名系统
是互联网上作为域名和 IP 地址相互映射的一个分布式数据库
(3) 应用实例: 用户在浏览器输入了 www.baidu.com
-
浏览器先检查浏览器缓存中有没有该域名解析 IP 地址,有就先调用这个 IP 完成解析;如果没有,就检查 DNS 解析器缓存,如果有直接返回 IP 完成解析。这两个缓存,可以理解为 本地解析器缓存
-
一般来说,当电脑第一次成功访问某一网站后,在一定时间内,浏览器或操作系统会缓存他的 IP 地址(DNS 解析记录).如 在 cmd 窗口中输入
ipconfig /displaydns //DNS 域名解析缓存
ipconfig /flushdns //手动清理 dns 缓存
-
如果本地解析器缓存没有找到对应映射,检查系统中 hosts 文件中有没有配置对应的域名 IP 映射,如果有,则完成解析并返回。
-
如果 本地 DNS 解析器缓存 和 hosts 文件 中均没有找到对应的 IP,则到域名服务 DNS 进行解析域
-
示意图