奇技淫巧之 dummy 网卡
云原生实验室
共 1776字,需浏览 4分钟
·
2020-12-12 18:02
更多奇技淫巧欢迎订阅博客:https://fuckcloudnative.io
在我们日常工作中,是否有这种需求,在断网的情况下,假装网络可以通,仍然可以通过类似 192.168.1.1 这样的 IP 访问服务 。除了我们经常使用本例换回口 127.0.0.1 以外,今天介绍一个神器:dummy 网卡。
? → ip link add nodelocaldns type dummy
? → ip addr add 169.254.20.10 dev nodelocaldns
? → ip addr add 10.96.0.10 dev nodelocaldns
创建网卡后,就可以本地 ping 通了
? → ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
5: nodelocaldns: mtu 1500 qdisc noop state DOWN group default qlen 1000
link/ether 4a:d6:09:1a:97:6a brd ff:ff:ff:ff:ff:ff
inet 169.254.20.10/32 scope global nodelocaldns
valid_lft forever preferred_lft forever
inet 10.96.0.10/32 scope global nodelocaldns
valid_lft forever preferred_lft forever
? → ping 10.96.0.10
PING 10.96.0.10 (10.96.0.10) 56(84) bytes of data.
64 bytes from 10.96.0.10: icmp_seq=1 ttl=64 time=0.016 ms
64 bytes from 10.96.0.10: icmp_seq=2 ttl=64 time=0.050 ms
dummy 接口的工作方式和 loopback 接口类似,但是你可以创建任意多的 dummy 接口。它提供路由数据包的功能,但实际上又不进行转发。dummy 接口主要有两个用途:
用于主机内的程序通信 由于 dummy 接口总是 up(除非显式将管理状态设置为 down),在拥有多个物理接口的网络上,可以将 service 地址设置为 loopback 接口或 dummy 接口的地址,这样 service 地址不会因为物理接口的状态而受影响。
细心的同学可能发现了前面创建的网卡名称是 nodelocaldns ,没错就是 k8s 里面的 local dns 的网卡,k8s 的 local dns 正是使用了这种分布式的 IP 的能力实现的,每台机器上面都可以有这样一个本地的网卡。
原文链接:https://chenxy.blog.csdn.net/article/details/110938569
你可能还喜欢
点击下方图片即可阅读
云原生是一种信仰 ?
扫码关注公众号
后台回复◉k8s◉获取史上最方便快捷的 Kubernetes 高可用部署工具,只需一条命令,连 ssh 都不需要!
点击 "阅读原文" 获取更好的阅读体验!
❤️给个「在看」,是对我最大的支持❤️
评论