• Linux14 NAT网络配置原理 查看网络ip和网关 修改ip地址 指定ip方法 主机名与hosts映射 主机名解析过程


    目录

    一 NAT网络配置原理

    linux-查看虚拟机的ip地址:ifconfig

    windows-查看主机ip地址:win+r cmd 进入命令行 输入 ipconfig

    ping测试主机之间网络联通性---在主机ping虚拟机ip

    ping测试主机之间网络联通性---在虚拟机ping主机ip

    二 查看网络IP和网关

    1 查看虚拟网络编辑器和修改IP地址

    2 查看网关

    三 linux网络环境配置

    1 方法一 自动获取--可以避免ip冲突,但是每次都不一样

    2 方法二 指定ip

    四 设置主机名和hosts映射

    1 设置主机名

    ​编辑2 设置hosts映射

    Windows下ping虚拟机hostname实现步骤

    Linux虚拟机中ping Windows hostname实现步骤

    五 主机名解析过程分析(hosts和DNS是啥,二者的关系是啥)

    1 hosts是什么

    2 DNS 

    3 应用实例分析主机名解析完整流程


    一 NAT网络配置原理

    假设我的电脑现在在一个教室里,我的电脑安装了虚拟机,在xshell登录root,发现可以ping通www.baidu.com,用图形化界面也可以打开浏览器访问百度,这说明虚拟机可以上网,也就是虚拟机可以访问外网(也叫互联网)。

    ping指令结束CTRL+ c

    为什么虚拟机可以访问到外网?-------网络配置原理

    linux-查看虚拟机的ip地址:ifconfig

    windows-查看主机ip地址:win+r cmd 进入命令行 输入 ipconfig

    ping测试主机之间网络联通性---在主机ping虚拟机ip

    发现可以ping通

    ping测试主机之间网络联通性---在虚拟机ping主机ip

    发现卡住了,因为Windows的防火墙起作用了

    如何关闭防火墙 https://jingyan.baidu.com/article/19192ad8f3132ca43f570739.html

    关闭Windows防火墙后,立马就可以ping通如下图所示

     虚拟机和主机之间互相可以ping通因为虚拟机和主机之间在同一网段,互相之间是可以连接的,虚拟机和主机之间可以互相通信

    查看主机真正上网的ip,无限网卡ip

    无限网卡可以和教室的局域网的公用网关连接

    为何虚拟机可以访问外网的解释:虚拟机和主机可以连接,主机有真正可以访问外网的无线网卡,无限网卡和主机连接,无限网卡可以访问局域网网卡,局域网网卡可以访问外网,最终实现虚拟机对外网的访问,具体如下图所示(简略图,路由器等等都省了)

    一开始安装centos的时候如下图有个网络连接模式就是选择的NAT模式

    注:Linux虚拟机的ip是不固定的即自动分配,也可以指定ip,让这个ip不变,具体内容见下

    二 查看网络IP和网关

    1 查看虚拟网络编辑器和修改IP地址

    如果修改这里的子网IP,那么重启系统之后虚拟机的ip和vmnet8的ip也会改变

    2 查看网关

    三 linux网络环境配置

    1 方法一 自动获取--可以避免ip冲突,但是每次都不一样

    说明:登录后,通过界面来设置自动获取ip,特点:linux启动后会自动获取IP,缺点是每次自动获取的ip地址可能不一样,这也就不能做服务器。工作的时候需要将某个机器当作服务器,必须固定ip来保持网络通讯

    查看linux虚拟机ip的获取方式步骤如下

     可以看出目前是自动获取ip的,会自动分配不冲突的ip

    2 方法二 指定ip

    说明:直接修改配置文件来指定ip,并可以连接到外网(程序员推荐)

    编辑 vim /etc/sysconfig/network-scripts/ifcfg-ens33       ens33是网络设备,类似于网卡,通过ifcfg-ens33  这个文件来配置

    要求:将Linux测ip地址配置为静态的,比如:ip地址为192.168.200.130

    注意,这里怕出错,最好拍个快照,以防万一

    步骤:xshell登录root连接虚拟机,输入vim /etc/sysconfig/network-scripts/ifcfg-ens33可以看到下图,按下i进入编辑模式

    添加的代码如下

    1. IPADDR=192.168.200.130
    2. GATEWAY=192.168.200.2
    3. DNS1=192.168.200.2

    BOOTPROTO自动分配dhcp也要修改为static

    按下esc键 输入:wq保存退出

    在vm中打开如下界面修改虚拟机ip为静态

    现在修改vmnet8的ip使之与虚拟机ip处于同一网段,修改完要点击确定和应用

    由于ip已经修改,所以xshell会自动断开

    重启网络服务或者重启系统后生效

    service network restart、 reboot

    在VMware终端输入reboot重启,重启后登录root,打开终端,输入ifconfig查看ip是否更改成功

    在主机命令行ipconfig 

    发现ip都已经修改成功

    再互相ping一下

     

     

    这里用虚拟机终端ping主机的时候也要打开防火墙才行

    以上实现了虚拟机和vmnet8两个ip固定,且二者可以互相连接,同时虚拟机也可以连接到外网 

    四 设置主机名和hosts映射

    1 设置主机名

    (1)前面在ping或者连接linux系统的时候,都是通过ip来实现的。为了方便记忆,可以给linux系统设置主机名,也可以根据需要修改主机名

    (2)指令hostname:查看主机名

     

    (3)修改文件在/etc/hostname  指令为 vim  /etc/hostname

    (4)修改后,重启生效

    2 设置hosts映射

    思考:如何通过主机名能够找到(比如ping)某个linux系统

    翻译:原来是ping ip  连接虚拟机   现在如何实现ping 主机名  连接虚拟机

    比如在windows终端中输入ping yyds100看看能不能ping通

    上图表示虚拟机ip是可以ping通的,但是虚拟机hostname无法ping通 

     后面学习大数据的时候肯定要用主机名来建立集群,所以必须实现ping通hostname

    Windows下ping虚拟机hostname实现步骤

    Windows中在C:\Windows\System32\drivers\etc\hosts文件指定即可

    打开后新增一句话如下所示,保存。注意这里需要管理员权限,直接将hosts文件拖到桌面,修改保存之后再拖回到etc目录下即可,关于管理员权限的直接点击继续

    以上就完成了虚拟机ip192.168.200.130和hostname yyds100之间的映射

    在Windows命令行再次ping yyds100尝试看看能不能通,发现通了,而且返回了对应的ip地址 

    Linux虚拟机中ping Windows hostname实现步骤

    首先保证防火墙关闭

    然后尝试在xshell 中 ping windows 的vmnet8的ip,发现可以ping通

    查看Windows主机名:此电脑--属性--设备名称

    也可以在命令行输入ipconfig/all查看

    在xshell中输入指令vim /etc/hosts

     加入语句如下,退出vim保存,注意这里数字不能用右侧小键盘的数字输入

    现在ping Windows的hostname就可以ping通了,如下图所示

    五 主机名解析过程分析(hosts和DNS是啥,二者的关系是啥)

    1 hosts是什么

    Hosts一个文本文件,用来记录IP和Hostname(主机名)的映射关系

    2 DNS 

    DNS就是Domain Name System的缩写,翻译就是域名系统

    是互联网上作为域名和IP地址相互映射的一个分布式数据库,不是一台服务器,是很多服务器,且分级

    简而言之,就是域名和ip的映射

    3 应用实例分析主机名解析完整流程

    用户在浏览器输入了www.baidu.com回车之后看到百度的首页,这个过程的完整解析见下

    (1)浏览器先检查 浏览器缓存 中有没有该域名解析IP地址,如果有 就先调用这个IP完成解析

    如果没有就检查 DNS解析器缓存,如果有直接返回IP完成解析。

    这两个缓存可以理解为 本地解析器缓存

    (2)一般来说,当电脑第一次成功访问某一网站后,在一定时间内浏览器或操作系统会缓存他的IP地址,也就是DNS解析记录,如在cmd窗口中输入

    ipconfig /displaydns //查看当前操作系统中的DNS域名解析缓存/本地解析器缓存

    ipconfig /flushdns //手动清理dns缓存

    (3)如果本地解析器缓存没有找到对应映射,检查系统中hosts文件中有没有配置对应的域名IP映射,如果有,则完成解析并返回

    (4)如果本地DNS解析器缓存和hosts文件中都没有找到对应的IP,则到域名服务DNS进行解析

  • 相关阅读:
    视频审核架构实践
    Pycharm中配置Celery启动
    【考研】数据结构考点——直接选择排序
    21年-05-自研-自我准备
    Vue进阶(幺陆玖)项目部署后IE报 SCRIPT1002:语法错误 解决方案探讨
    数据仓库
    有用的安装Pytorch Debug网站
    mybatispuls 批处理 rewriteBatchedStatements=true
    Linux系统编程系列之线程属性
    lintcode 1646 · 合法组合【字符串DFS, vip 中等 好题】
  • 原文地址:https://blog.csdn.net/m0_54108654/article/details/126639782