从Linux的安装,基本命令的使用,常规 Linux 的安全策略到 Linux 常见的目录结构,今天我们看看Linux的网络

“秀才不出门,便知天下事”,你是秀才你试试。

没有网络,我们可能停留在看电视,跳皮筋的年代,我还真是会跳皮筋

为了让我们下载软件更加的顺畅,速度更快,最快速度白嫖资源,不得学习下配置网络


配置Linux网络

既然要配置网络,我们先看看网络的配置文件在哪里,以及相关的配置有哪些,分别代表是什么意思

  • 打开网络配置文件

BOOTPROTO = static,表示启用了静态 IP 地址,默认为 none

NAME = eth0,与网卡配置文件对应的一个标签,如果为 eth0 则配置文件是 ifcfg-eth0

UUID = xxxx,网卡唯一设备标识,系统自动得生成

DEVICE = XXX,网卡设备名称,是物理设备标识

IPADDR0 = XXX,表示设置 IP 地址。这里注意后面的数字,在 Centos7 以后可以一个网卡配置多个IP地址

PREFIX0 = 24,设置子网掩码,这里设置子网掩码的方法和之前的版本也不一样,24代表是255.255.255.0

Getway = XXX,网关地址,什么是网关线面会详细阐述

知道配置文件每一行代表的含义以后,就可以根据自己的需求进行配置了,记得配置完成以后重启网络,如果是Centos7,那么命令将是下方的命令

service network restart
  • 本地回环配置文件(/etc/sysconfig/network-scriptis/ifcfg-lo)

第一行Device:网络的设备名

第二到四行:lo 接口的 IP 地址,子网掩码,网络号

第七行:lo 接口的广播地址

第八行:开机启动 lo 接口

第九行:将 lo 接口设置为本地回环地址

  • DNS 配置文件 /etc/resolv.conf

这里的「namespace」 表示域名服务器,后面的 IP 地址就是 DNS 服务器,当用户在 Linux 中访问某个域名的时候,就需要靠这些 DNS 服务器来解析

  • 设置主机和 IP 绑定配置文件 /etc/hosts

为什么会说说这个配置文件呢,因为当在部署集群的时候,我们需要在此配置,方便我们不用每次都是输入其他机器得IP进行访问,而是直接使用用户名即可。

类似于 Windows 下得 hosts 文件,我们看看 Linux 中的 /etc/hosts 的内容

从上面我们发现,hosts 文件中的每一行内容为一个主机,每一行由三个部分组成,其中每个部分按空格隔开。

多说一句,以后大家如果需要分析一些日志文件的时候,一定要清楚是按照什么分割的,免得浪费了时间却还没有处理好问题

  • 第一部分:网络IP地址

  • 第二部分:主机名域名

  • 第三部分:主机名

路由

我和你的通信需要网络的传输,这个传输过程中可以说经历了九九八十一难,看到此,是不是点个让我安稳下心灵,停,不是现在拉下去点赞,晚点晚点

就是这样穿过无数的节点,无数的路由器才将信息传递到你的屏幕

那么为了保证将信息传递给你,在数据传输到达某一个网络节点后,这个网络节点需要根据一个**「约定」将数据传送到另一个网络节点,然后再传输到下一个节点,依此类推到达目标主机。这里的每个网络节点就是「路由」,所谓的约定即路由规则**

那么不使用路由就不行?

举个例子,我给你寄几箱猕猴桃,我的地点在北京,到了快递点,我需要写你的地址,比如是"成都市高新区马保国镇222单元",通常邮寄点不会直接帮你送到指定的地址,而是可能先到成都,然后成都这边揽收再送到马保国镇,这种就是采用分发得策略来提升效率。

这里的寄送系统就是一个大型的网络系统,每个寄存点主要负责快递的传送任务,只要快递到达寄存点,就得准确,迅速将信件投递到下一个寄存点处,这里的快递就是通过「路由机制」准确,快速的寄送到目的地的。

有哪几种路由呢

  • 静态路由

静态路由是系统管理员通过 route 手工加入的静态路由规则

  • 动态路由

动态路由是不同机器彼此经由程序相互交换路由规则而来的。如果网络发生了变化,路由软件会重新计算路由并发出新的路由更新信息

路由如何配置

在Linux中,通过 route 命令配置静态路由信息,

route [-n|ee]

常用的选项我将其总结如下

  • 查看当前路由表信息

从上面我们可以知道通过 route -n 输出的为纯 IP 地址,而 route 输出的信息就会包含主机名信息,下面说说选项的含义

  • Destination:网络号,即network的意思
  • Gateway:连出去的网关地址
  • Flag
    • U:代表路由启动勒
    • H:代表目标路由是一部主机而非网络
    • R:代表使用动态路由的时候,回复路由信息标识
    • G:表示需要通过外部的主机来转递数据
    • M:表示路由已经修改了

网关是什么

不知道大家有没有经历过在宿舍买台交换机,然后几台机器组成局域网打游戏狂欢的日子

那个时候苦逼呀,只能打局域网的游戏,不能上网,时代在进步,科技在腾飞呐,学校就给每个宿舍分配一一个IP地址,这个 IP 地址是学校的网管部门负责,宿舍网的 IP 通常是192.168.1.x,校园网的IP地址假设是10.10.x.x,

如果此时你想在宿舍上网,那该怎么办?

  • 第一种方案:舍友们众筹买一张网卡,然后插入到A同学的电脑上,一张网卡的线插在宿舍的交换机,另一张网卡插在校园网的网口,此时就可以上网,但是A同学电脑就贡献出去了,只能看你们打游戏,他自嗨,多可怜
  • 第二种方案:买个路由器,这个路由器有内网网口和外网网口,外网网口插在校园网的网口上面(当然配置的时候根据网管部门所要求的),内网网口连接上宿舍的所有电脑,这样的话,路由器就得一直都开着

宿舍长可以上网了,其他人的电脑要上网还需要配置下各自的网卡,通常是DHCP默认配置,在配置的时候你就会发现有个叫做Gateway的东西,这就是网关,要了解网关不得不去了解MAC头和IP的头部

MAC和IP头部有啥?

网卡自出生那天起,就带上了这个地址,那么问题来了,为啥不使用MAC地址进行通信呢?因为靠MAC地址没法定位准确,它更像身份证,作为唯一标识。举个例子,我住在“成都市高新区B座5楼”,有个女娃儿可以问路人:“成都市高新区B座在哪里”,路人可以给他比较明确的地点,但是如果她问:“你知道小蓝(身份证)在哪儿吗”,很明显无从得知,说不定以为"你是个傻子吧"。

你可以找到IP地址(成都市高新区B座5楼),但是可能还是找不到我,这个时候假设你可能去服务台问(其实是靠吼,身份证为XXX的是哪位),这个时候我听到自然就会答应,不过你如果在北京喊,就听不见了,所以 MAC 地址实际上通信范围是也是比较小的,局限在一个子网里。它的头部结构都有哪些字段?

图中的类型大部分都是IP数据包,IP里面可能包含了TCP,HTTP等,这都是封装的事儿了。拥有了这个MAC地址,就会在链路上广播,MAC的网卡才发现这个包原来是给它的,网卡将包收进来,打开 IP 包,发现 IP 地址是自己的,再打开TCP包发现端口是自己,还是80,正好就是目前监听的端口,开启摸鱼聊天模式

IP头部都有哪些字段?

上述 IP 头部的详细信息就先不说了,这里主要述说源IP和目标IP地址,当我们要访问一个IP地址的时候,需要判断这个目标IP是否和当前的IP地址在同一个网段

怎么判断是否在同一个网段

此时涉及到网络的 CIDR 和子网掩码了。我们通常将 IP 地址比喻为门牌号码,既然是门牌号码,如果一样了就会冲突。假设大家都将地址设置为三单元110,那快递小哥就压根找不到地方,所以,我们使用电脑的时候,有时出现上不了网了,很可能是IP冲突了哟。

10.120.55.73,这就是一个IP地址。按照"."分割,其中每个部分占 8 个 bit ,所以 IP 地址为 32 位,这样的话 IP 地址一共就有约42.9亿个,很明显在现在看来不够用,但是当初设计者哪知道现在这么多计算机呀,于是出现了 IPV6,128 位,至于够不够用还得看看国家的生育政策了

不够用就算了,还将这些IP地址分为了5类

对于A,B,C这三类,分为了两部分,前面一部分为网络号,后面一部分为主机号,还是比较好理解。假设大家都是3单元110,小蓝是东华小区的110,而小李是万科小区的110

那么这几类,分别代表了多少的主机数量呢

从上图我们发现C类的地址254个,B类地址65534,这放在一个网络下面岂不是太浪费,有没有折中的方法呢

CIDR

CIDR 叫做无类型域间选路。将上面 32 位的地址分为两部分,分别为网络号和主机号。比如地址10.120.55.73/24,斜杠后面的24表示在32位中,前面的24为网络号,后面的8位为主机号

如何得到网络号

将子网掩码和IP地址进行 AND 运算就可得到网络号。此时子网掩码为255.255.255.0,255 转换为二进制为1,1 和任何的数进行AND运算都是原来的数值,所以前面三个数不变,为10.120.55。后面一个数为0,0和任何数进行AND运算为0,所以最后一个数为0,合计后就是10.120.55.0,这就是网络号

什么是私有地址和公有地址呢

我们平时自己的电脑或者办公室里,一般都是私有IP地址,因为这些IP地址由相关组织的内部管理,自己分配使用,所以我的私有IP地址可能和你的是一样的

这就好比我所在的小区是3栋,你的小区也是3栋。但是一旦走出了小区,就需要使用共有IP地址了。就像建设路1000号,这是相关部门划分的,不能两个小区都叫做建设路1000号

怎么获取公有IP地址呢

这就需要花钱了,毕竟是共有的,比较香且有限制。假设你要做一个网站,全国人民都可以访问,就需要买个 IP 地址了

在这五类地址中,还差一个D类组播地址。从名字可以看出,这类地址属于一个组的机器都能收到。就仿佛QQ群,发个消息大家都能看到,至于回复不回复另说

好了,说了这么多,回到网关部分

如果你想和你的室友通信,就和网关没有关系,因为你们在同一个网关,只需要通过 ARP 获得 MAC 地址,然后将源MAC 和目的 MAC 放入到 MAC 头中发出去即可

如果不是在同一个网段,你想和你的异地女友聊天,这个时候会先访问默认网关 Gateway,这个过程和发往同一个网段的其他机器又是一样的,将源地址和目的地址放入IP头,通过ARP获取网关MAC地址,将源 MAC和网关 MAC 放入 MAC头部发送出去,网关所在端口接受以后下一步操作就看网关了

网管呢可以当作是路由器,路由器是一个物理设备,假设有5个网口,五个网口相当于五条路,分别连接五个局域网,每条路的 IP 地址都和局域网的 IP 地址是同一个网段,每条路都是它握住的那个局域网的网关

简单来说:如果一个包想发到其他的局域网,都会选择一条路 ,然后根据路由算法,选择另一条路加上IP头和MAC投扔出去

到底选择哪一条路?

  • 静态路由

静态路由比较简单,直接在路由器上配置规则,规则为:假设访问A网站,就从2号口出去,下一跳为 IP2;如果想访问B网站,则从3号口出去,下一跳为IP3,随后缓存在路由器中

那么IP头和MAC头,需要修改哪些内容呢


常见的网络连接方式

桥接的基本原理

桥接默认使用VMnet0,Bridge桥当作一台机器,这个机器有两块网卡分别处于两个局域网中,使用""连接,这样局域网A 和 B 就无缝的连接起来,桥接的时候 VMWare 网卡和物理网卡处于同一个IP网段

Vmvare 桥是同样的原理,Vmvare 软件会虚拟一块网卡,当使用桥接的时候,Vmvare 会虚拟一块网卡和真正的物理网卡进行桥接,这样的话,发送到物理网卡的所有数据包就到了 Vmvare 虚拟机

而由 Vmvare 发出的数据包也会通过桥从物理网卡那端发出,所以,如果物理网卡可以上网,那么桥接的虚拟网卡也基本上没问题

联网的方式

桥接的方式是最简单的,主机怎么联网,那么虚拟机就怎么联网,将虚拟及当作局域网中的一台电脑就好了

注意:主机网卡可以访问 internet 的局域网的时候,虚拟机才会通过 Bridge 访问 internet

Nat

Nat的基本原理

NAT的全称是 Network address translate,NAT应用在 Internet 网关和路由器上。比如192.168.0.123这个地址需要访问Internet,数据包会先到路由器或网关,然后网关和路由器会有一个能访问 Internet 的 IP 地址,这样的网关和路由器在收到数据包后,对数据包的 IP 进行更改(NAT),这样就可以让私有网段的主机能够顺利访问Internet,这个技术解决了 IP 稀缺的问题,同样的私有 IP 可以网关NAT上网

那么对于Vmvare 是同样的道理,它会在虚拟机和主机之间伪造一块网卡,这个网卡和虚拟机的IP出于同一个地址段,网卡和主机的网络接口进行NAT,意味着虚拟发出的每一块数据包都会经过虚拟网卡,然后NAT,从主机的接口发送出去

注意:虚拟网卡和虚拟机处于同一个地址段,虚拟机和主机处于不同的地址段,主机相当于虚拟机的网关,所以虚拟机能够 ping 通主机的 Ip,但是主机 Ping 不同虚拟机 Ip、

联网方式

  • 动态ip地址

这个方式简单,直接将虚拟机设置成使用DHCP方式上网,Linux开启DHCP服务即可。注意:在vmvare中,需要在编辑-----虚拟网络设置中,将DHCP开启,默认为关闭

  • 静态IP设置

如果不想使用DHCP,也可以手动设置:IP设置与 vmnet1 同网段,网关设置成 vmnet8 的网关(在“虚拟网络设置”里的Net选项卡里能找到Gateway)通常是xxx.xxx.xxx.2。 子网掩码设置与VMnet8相同(设置好IP地址后,子网掩码自动生成)
DNS设置与主机相同。

例如:主机IP是 10.70.54.31,设置虚拟机IP为 10.70.54.22。Netmask,Gateway,DNS都与主机相同即可实现 虚拟机 —主机 虚拟机<---->互联网 通信。

提示:使用NAT技术,主机能上网,虚拟机就可以访问 Internet,但是主机不能访问虚拟机

host–only的方式

这种方式:只需要主机和虚拟机通信,不让虚拟机访问Internet。同样是两种方式

  • 动态IP地址

此处和上面一样,开启DHCP以后,虚拟机就可以自动的获取IP地址和DNS了

  • 静态地址

将IP地址设置为和 VM 一个网段,网关设置为 VMnet1 的网关,

也可以手动设置,将虚拟机 IP 设置与 VMnet1 同网段,网关设置成 VMnet1 的网关相同,其余设置与 VMnet1 相同,DNS设置与主机相同。

举个例子

例如:VMnet1 IP:172.16.249.1 Gateway :172.16.249.2 。那么虚拟机

​ IP:172.16.249.100 Gateway: 172.16.249.2。这样、 虚拟机<—>主机 可以通信,但是、 虚拟机<—>互联网 无法通信
  
  提示:Host-only技术只用于主机和虚拟机互访,于访问internet无关。

好了,今天就到了这了,拜拜

「Linux」网络配置大揭秘相关推荐

  1. 「Linux」- 运行任天堂红白机游戏(“小霸王”) @20210308

    问题描述 # 02/16/2021 今天,闲来无事(其实也有事,就是累了,想休息一下),想再玩一玩这些小游戏,重温经典,所以就有了这篇文章,来记录这一过程.当我们不会去买一个红白机,虽然有卖的.我们想 ...

  2. 「Linux」- 禁用 IPv6 协议栈 @20210403

    问题描述 为什么禁用 IPv6 协议栈?因为很多配套的基础设置还未到位,因此使用 IPv6 会遇到很多问题,比如 a 5-second delay 问题. 该笔记将记录:在 Linux 中,如何禁用 ...

  3. 史上最「奇葩」的十大编程语言,最后一个有毒……

    关注「实验楼」,每天分享一个项目教程 当你看到这些编程语言时,你的反应应该是「这人一定很闲」.「同是九年义务教育,他为什么这么优秀」.「这人有毒吧」-- 正文共:2220 字 预计阅读时间:7 分钟 ...

  4. linux wlan进程名称,linux无线网络配置无线网卡驱动安装与wlan802.11配置

    Linux无线网络配置--无线网卡驱动安装与WLAN 802.11 配置 Linux无线网络配置--无线网卡驱动安装与WLAN 802.11配置2008-05-10 18:27 20739人阅读 评论 ...

  5. steam 32位 linux 下载地址,「Linux」- 安装 Steam 客户端

    「Linux」- 安装 Steam 客户端 更新日期:2020年09月30日 问题描述 虽然不经常玩游戏(有玩的冲动,但是打开游戏之后又不想玩了),但是还是会安装 Steam 客户端 该笔记将记录:在 ...

  6. 有道 linux 安装路径,「Linux」- 安装有道词典

    「Linux」- 安装有道词典 更新日期:2019年07月10日 @IGNORECHANGE 系统环境 系统环境:Debian 安装依赖 #!/bin/bash apt-get install pyt ...

  7. Linux查询网络配置相关命令

    Linux查询网络配置相关命令 查看网络接口信息 ifconfig:查看系统所有网络接口相关信息 ifconfig -s:查看所占内存 查看及修改主机名 hostname:查看主机名称 hostnam ...

  8. 【JNU】网络配置大题详解(E口与G口两种类型)

    [JNU]网络配置大题详解(E口与G口两种类型) E口与G口的不同之处 E口的SW1配置 G口的SW1配置 RT1配置 RT2配置 RT3配置 E口运行结果 G口运行结果 E口与G口的不同之处 如果你 ...

  9. Linux基本网络配置

    Linux基本网络配置 查看网络接口信息ifconfig 查看指定网络接口信息ifconfig 网络接口名 查看网络连接情况 netstat命令查看系统的网络连接状态,路由表,接口统计等信息 nets ...

  10. docker运行linux桌面,「Linux」- 在 Docker 中,运行桌面应用(以向日葵远程客户端为例)...

    「Linux」- 在 Docker 中,运行桌面应用(以向日葵远程客户端为例) 更新日期:2021年01月15日 @IGNORECHANGE @WIP 问题描述 我们使用 Debian 发行版,但是某 ...

最新文章

  1. 笔记-信息化与系统集成技术-客户关系系统CRM
  2. C++直接初始化与复制初始化的区别深入解析
  3. selenium抓取_使用Selenium的网络抓取电子商务网站
  4. 谷歌的量子计算机速度,谷歌称其量子计算机速度比传统计算机快1亿倍
  5. .Net页面中使用在线编辑框实例
  6. Discuz X3.1 论坛修改的方法
  7. 学完python能做什么-学完Python开发可以从事哪些行业?
  8. 「题解」:[AHOI2012] 树屋阶梯
  9. iOS----UIScrollView
  10. iOS appicon 与 launchImage 尺寸一览
  11. 医学图像分析领域算法汇总
  12. 木兰当事人回应!承认部分基于 Python 二次开发
  13. 计算机bios设置论文,玩转电脑必看知识——各种BIOS设置详解 的更多相关文章
  14. UVA-10499 The Land of Justice
  15. MySQL高可用和灾备调研
  16. int 类型 转 long的坑
  17. Bugzilla一些权限设置(bug,项目的权限)
  18. 狂神redis学习笔记
  19. 高通QFIL版本烧录过程
  20. Guava 布隆过滤器

热门文章

  1. 学习单片机必须要学的八大知识点,你知道吗?
  2. 经典计算机模型,经典Volterra模型分界线的计算机模拟
  3. 随着计算机科学,行测真题_随着科学技术的发展,人机交流已经成为现实_步知行测...
  4. 计算机应用中双绞线细铜线几根,《计算机应用基础_在线作业_E100.doc
  5. page fault
  6. 2022年全球市场燃气烧烤架总体规模、主要生产商、主要地区、产品和应用细分研究报告
  7. mysql中secure_file_priv=不生效的问题
  8. 计算机学院 名言,计算机系网络毕业名言
  9. TCP三次握手第三次握手时ACK丢失怎么办
  10. 锐捷(七)设备软件版本升级更新