闲情居|Kubernetes 的配置和运行:网络,非云环境中

这是非云环境中Kubernetes的配置和运行系列的第三篇文章 , 本文主要介绍组成网络体系架构中的每个组件 , 及其它们在整体架构中的作用 , 重点介绍IP、子网、DHCP、DNS等技术 。
想要先睹为快的读者 , 可直接克隆该项目的GitHub代码库 。 代码库中的文档正在持续改进中 , 并完全可用 。 代码库地址为:mvallim/kubernetes-under-the-hood
DNS网站等Internet资源有两种表示方式 , 即通过其域名(例如 , “kubernetes.io”) , 或是通过承载资源的主机IP地址(例如 , “45.54.44.102” , 即与kubernetes.io域关联的IP) 。 网络层使用IP地址确定设备的物理位置和虚拟位置 , 但对于用户和企业而言 , 域名更易于记忆 。 因此 , 我们需要一种将域名解析为IP地址的机制 。 这就是DNS的主要功能 。 DNS时常被假定为仅用于将Internet主机名映射到数据(例如TXT、MX等) , 并将地址映射到主机名 。 但事实上 , DNS可用于存储几乎用于任何目的的各种数据类型 。
出处:
为了简化概念 , 我们可设想在一个教室中 , 老师以学生的名字呼唤学生 , 然后学生回答说他们在班级中的确切位置 , 并提供以行和列表示的座位坐标 。 例如:
老师说:“小明!”小明回答:“我在这里 , 第4行第10列 。 ”老师说:“好的 , 我知道你的确切位置了 , 第4行第10列 。 ”在上面的例子中 , 老师知道了小明的具体座位 。 同样原理 , 当我们在浏览器中输入地址“kubernetes.io”时 , DNS响应以地址“45.54.44.102” 。
NAT在计算机网络中 , 网络地址转换(NAT , NetworkAddressTranslation) , 也称为“地址伪装”(masquerading) , 是一种使用哈希表重写通过路由器或防火墙的源地址网络包 , 使得内网计算机可以访问外网或者万维网(即公网)
引用自:https://en.wikipedia.org/wiki/Network_address_translation
DHCP动态主机配置协议(DHCP , DynamicHostConfigurationProtocol)是一种为网络中设备(包括虚拟机实例、笔记本、平板电脑、移动设备、IoT传感器等)提供IP地址、子网掩码、默认网关地址、DNS服务器地址、DNS搜索前缀、WINS服务器地址等动态配置的TCP/IP服务协议 。
DHCP是从BOOTP延续发展而来 。 尽管BOOTP协议更为简单 , 但不能满足当前的需求 。 DHCP在1993年10月成为标准 , 在RFC2131(1997年)中包含了大部分的当前规格说明 。 最新基于IPv6的DHCP(DHCPv6)规格说明发布在RFC3315(2003年)中 。
引用自:
如果读者未理解DHCP , 可回顾上一篇技术栈文章 。
网关网关也称为协议转换器 , 可运作在任一网络层 。 网关的职责比路由器和交换机更为复杂 , 因为网关使用多种协议通信 。
网络节点是因特网用户的计算机和向用户提供网页的计算机 。 连接节点间网络的节点就是网关 。 例如 , 用于控制企业网络的计算机 , 或是因特网服务提供商(ISP)用于将用户接入因特网的计算机 , 就是网关节点 。 在企业网络中 , 充当网关节点的服务器通常作为代理服务器或防火墙服务器 。 网关通常与路由器有关 , 路由器知道将网关接收的特定数据包发向何方 , 并进行交换 , 这为特定接收方提供了网关的实际输入和输出路径 。