手把手教你实现Docker部署Redis集群( 三 )
ip netns exec netns1 ip link show
当然 , 在docker里面 , 除了将Veth放入容器 , 还改名为eth0 。 想要通信必须先分配IP地址:
ip netns exec netns1 ip addr add 10.1.1.1/24 dev veth1ip addr add 10.1.1.2/24 dev veth0
启动它们:
ip netns exec netns1 ip link set dev veth1 upip link set dev veth0 up
测试通信:
ip netns exec netns1 ping 10.1.1.2
Veth Pair查看端对端在实际操作Veth Pair时 , 可以使用ethtool便于操作 。
在一个Namespace中查看Veth Pair接口在设备列表中的序列号:
ip netns exec netns1 ethtool -S veth1
如果得知另一端的接口设备序列号 , 假如序列号为6 , 则可以继续查看6代表了什么设备:
ip netns exec netns2 ip link | grep 6
Iptables/NetfilterLinux协议栈非常高效且复杂 。 如果我们想要在数据处理过程中对关心的数据进行一些操作 , 则需要Linux提供一套相应的机制帮助用户实现自定义的数据包处理过程 。
在Linux网络协议栈有一组网络回调函数挂接点 , 通过这些挂接点函数挂接的钩子函数可以在Linux网络栈处理数据包的过程中对数据包一些操作 , 例如过滤、修改、丢弃等 。 整个挂接点技术叫做Iptables和Netfilter 。
Netfilter负责在内核中执行各种各样的挂接规则 , 运行在内核模式中 。 而Iptables是在用户模式下运行的进程 , 负责协助维护内核中Netfilter的各种规则表 。 通过二者的配合来实现整个Linux网络协议栈中灵活的数据包处理机制 。
文章插图
规则表Table这些挂载点能挂接的规则也分不同的类型 , 目前主要支持的Table类型如下:
?RAW?MANGLE?NAT?FILTER
上述4个规则链的优先级是RAW最高 , FILTER最低 。
在实际应用中 , 不同挂接点需要的规则类型通常不同 。 例如 , 在Input的挂接点上明显不需要FILTER的过滤规则 , 因为根据目标地址 , 已经在本机的上层协议栈了 , 所以无需再挂载FILTER过滤规则 。
RouteLinux系统包含了一个完整的路由功能 。 当IP层在处理数据发送或者转发时 , 会使用路由表来决定发往哪里 。 通常情况下 , 如果主机与目的主机直接相连 , 那么主机可以直接发送IP报文到目的主机 。
路由功能是由IP层维护的一张路由表来实现 。 当主机收到数据报文时 , 它用此表来决策接下来应该做什么操作 。 当从网络侧接收到数据报文时 , IP层首先会检查报文的IP地址是否与主机自身的地址相同 。 如果数据报文中的IP地址是自身主机的地址 , 那么报文将被发送到传输层相应的协议栈中去 。 如果报文中的IP地址不是主机自身的地址 , 并且配置了路由功能 , 那么报文将被转发 , 否则报文将被丢弃 。
路由表的数据一般以条目形式存在 , 一个典型的路由表条目通常包含以下主要的条目项:
?目的IP地址?下一个路由器的IP地址?标志?网络接口规范
通过路由表转发时 , 如果任何条目的第一个字段完全匹配目标条目的IP地址(主机)或部分匹配(网络) , 那么它将指示下一个路由器的IP地址 。 这些信息将告诉主机数据包该转发到哪一个“下一个路由器” 。 而条目中所有其它字段将提供更多的辅助信息来为路由转发做决定 。
如果没有一个完全匹配的IP , 则继续搜索网络ID 。 找到则转发数据到指定路由器上 。 由此可知 , 网络上所有主机都是通过这个路由表中的单个条目进行管理 。
如果上述两个条件都不匹配 , 则将数据报文转发到一个默认路由器上 。
如果上述步骤失败 , 默认路由器也不存在 , 那么这个数据报文无法转发 。 任何无法投递的数据都会产生一个ICMP主机不可达或者ICMP网络不可达的错误 , 并将该错误返回给生成此数据的应用程序 。
- 想实现《曼达洛人》的数字布景吗?索尼模块化屏幕即将开售
- 教你用Siri来控制电脑:真香
- 快递员工也能当“教授”?上海快递工程技术高级职称评审实现突破
- 虾米音乐别了!教你把虾米导入QQ音乐网易云音乐
- 骁龙888首次实现可变分辨率渲染 创造沉浸式游戏体验
- 柔宇FlexPai 2实现多次重复折叠无折痕,斩获CES 2021创新奖
- 飞步无人车:实现首个混线工况下的自动驾驶集卡编队独立整船作业
- 教你一招,把纸质证件扫描到手机变成电子档,非常清晰,永久保存
- 荣耀、高通相继宣布,雷军迎来大敌?任正非的预言正在实现
- 李炳忠自我打脸,去年realme销量翻番的目标远未实现