问题标签 [macvlan]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - 使用 multus-cni 添加的 IP 地址无法从同一集群中的另一个 pod 访问
我正在使用 multus-cni 在我的 pod 中创建多个接口。我已经配置了 weave-net CNI,因此 pod 提供了集群 ip 10.32.xx 使用下面的 network-attachment-definition ,我能够在 IP 地址为 10.32.0.180-199 的 pod 内启动多个接口,但这些 IP 地址是无法从同一集群中的其他 pod 访问。如果我在另一个 pod 中执行 kubectl exec 并 ping 10.32.0.180,我将无法 ping 该 IP。
谁能告诉我需要做什么才能在集群中访问 pod 中的其他接口?
cni - 如何使用 podman 复制 docker macvlan 网络?
我在用于托管 Unifi 网络控制器应用程序的 Fedora 工作站上有一个可用的 docker 实现。我使用 macvlan 为控制器分配静态 IP。创建 macvlan 的 docker network 命令是:
控制器运行的容器被分配了一个静态 ip:
docker run --rm --init --network unifinet --ip 192.168.110.226 ....
我想使用 podman 作为替代来实现这一点。是否有有用的在线教程解释如何使用 podman 使用的 CNI 的实现?特别是macvlan插件?我无法决定是否应该使用静态 IPAM 插件或本地主机 IPAM 插件。
Brent Baude 的使用 Podman 容器租赁可路由 IP 地址是一个好的开始,但重点是使用 dhcp IPAM 插件。
谢谢你
docker - 混杂模式下的 GCP 计算实例网卡
我在 GCP 的 Ubuntu 实例上添加了一个 macvlan docker 网络。但是我无法访问/从实例。我想也许有一个限制,每个实例只强制执行一个 MAC。
任何人都知道这一点或有解决方法吗?有没有办法在 GCP 的网关端查看 arp/mac 表的外观?
我的意图是为使用实例主网络的辅助 IP 地址的 docker 使用 macvlan 网络。
更多详细信息:我为 VM 实例分配了辅助 IP 范围。例如 VM 内部 IP(主要):10.10.10.2/24,VM 次要 IP 范围:10.10.11.0/24
GCP 将虚拟机次要范围路由到虚拟机 IP 地址。我通过使用 IP 10.10.11.2 创建一个测试环回并从同一 VPC 中的不同 VM 访问此 IP 来对此进行测试。有效。
在下一步中,我删除了那个虚假的环回并使用 IP 地址为 10.10.11.2 的 macvlan 网络安装了一个独立的 docker 容器。
我期待连接到这个 macvlan 网络的新容器可以通过具有容器的 MAC 和 IP 地址(10.10.11.2)的 VM ens4 接口访问。
根据文档,这就是 macvlan 网络所做的。它通过为 macvlan 网络中的每个容器使用新的 MAC 地址,将 macvlan 网络与主机网络完全隔离。
主机 VM 上的辅助范围 IP 和驻留在 macvlan 网络中的案卷容器上的 IP 之间的唯一区别是容器使用的 MAC 与主机 VM 不同。
synology - 使自定义 Synology NAS 网络配置持久化的最佳/正确方法是什么?
我的 Synology DS218+ 上有一个 macvlan,可让 Synology 访问在 Docker 管理的 macvlan 上运行的几个 Docker 容器。我使用 IP 命令创建 Synology macvlan。使此 macvlan 配置在重新启动后保持不变的最佳方法是什么?具体的IP命令是:
谢谢
linux - Docker MACVLAN 仅适用于出站
我正在尝试为我的 docker 容器设置 MACVLAN。我有一个全新的 Raspbian 和 Docker 安装,并按照 Docker 文档中概述的步骤创建 MACVLAN:https ://docs.docker.com/network/network-tutorial-macvlan 。
网络如下所示:
假设我有一个连接到该网络的 Alpine 容器。从容器内部,我可以访问互联网以及我网络上的所有内容。但是,我无法从外部访问 MACVLAN 内的任何容器。我知道这通常不适用于主机,但我不是试图从主机访问容器,而是从我网络上的另一台机器访问。容器的 IP 无法从外部访问。
如果我按照步骤允许主机访问 MACVLAN 上的容器(创建另一个 MACVLAN 并添加路由表条目),我可以从主机访问容器,但仍然不能从外部访问。
也许这更像是一个 Linux 网络问题而不是 Docker 问题?
Docker 版本:19.03.6 操作系统:Raspbian Buster 10,内核版本 4.19.97-v7+
是否有想法将不胜感激。
docker - 使用 macvlan 的 docker 容器的网络路由
TLDR;我无法从其他网络客户端 ping 我的 docker 容器。只有当容器主动 ping 网关时,我才能在之后访问容器。
在我的家庭网络 (192.168.0.0/24) 上,我运行一个网关 192.168.0.1,它托管一个 DNS 服务器并路由互联网流量。我的 docker 主机 (192.168.0.100) 有一个 macvlan 网络,使用
我的容器现在确实获得了静态 IP,例如 192.168.0.200。容器可以主动 ping 网络上的其他物理主机,因此可以正常工作。
但是,如果我启动一个新容器,则无法从我的物理网络 ping 通它。不是来自 docker 主机(这是预期的,因为这似乎是 macvlan 网络的限制),也不是来自网关或任何其他客户端。一旦容器主动 ping 网关,其他客户端也可以访问它。
所以我想需要做一些路由,我需要你的帮助。
客户端在 debian buster 上运行,我使用非托管交换机连接客户端。
docker - QEMU 客户机上的 Docker 容器没有 LAN 连接
在 Ubuntu 20.04 服务器上,我运行 Debian 10 作为 KVM-guest,通过 macvtap-bridge 连接。在那个客人里面,我有一个 macvlan-bridge,连接着一个 docker 容器。
由于某种原因,该容器似乎没有任何网络连接,我看不到错误。
编辑2
由于我还没有得到任何答案,而且我还继续调查整个主题,我开始怀疑我的想法是否真的有效!
因此,我想提前问一个非常普遍的问题:是否有可能有一个 KVM-guest,它使用一些容器运行 docker,并通过“公共网桥”将它们全部连接起来?这样主机、KVM-guest 和 docker 容器都出现在本地局域网上,就像单独的机器一样(当然可以相互通信)。这种类型的设置称为“嵌套虚拟化”。但是我找不到一些参考资料来解释如何“公共桥接”两个级别的嵌套 VM。
因此,如果有人可以首先澄清这个问题,最好的情况是包括有关如何做到这一点的文档/说明。
/编辑2
编辑1
为了提供更多背景知识,我基本上尝试实现这样的设置:
所以 Host、VM1、VM2 和 docker 容器应该直接连接到 LAN,就像它们是物理机器一样。因此,如果有人能指出我实现这一目标的不同方法,我也会很高兴......
/编辑1
以下是配置详细信息:
Ubuntu主机(香蕉)
/etc/网络/接口:
ip地址:
Debian-guest 的 Libvirt XML-部分网络:
Debian 来宾 (bananaLAN)
/etc/网络/接口:
ip地址
码头工人(程序)
网络创建
容器创建
ip地址:
Ping 结果
Ubuntu 主机(香蕉)到网关:
Ubuntu 主机(香蕉)到 LAN 主机:
Ubuntu 主机(香蕉)到 Debian 来宾:(这是预期的)
Ubuntu 主机(香蕉)通过独立网络连接到 Debian 来宾:
Debian 来宾 (bananaLAN) 到网关:
Debian 来宾 (bananaLAN) 到 LAN 主机:
Debian 来宾(bananaLAN)到 Ubuntu 主机:(这是预期的)
Debian 来宾(bananaLAN)通过独立网络连接到 Ubuntu 主机:
Docker 容器(路由)到网关:(这就是问题所在!)
Docker 容器(路由)到 LAN 主机:(这就是问题所在!)
Docker 容器(路由)到 Ubuntu 主机:
Docker 容器(路由)到 Debian 主机:
LAN主机到网关:
LAN 主机到 Ubuntu 主机(香蕉):
LAN 主机到 Debian 主机(bananaLAN):
LAN 主机到 Docker 容器(路由):(这就是问题所在!)
路由表
网关 (192.168.2.1)
Ubuntu主机(香蕉)
Debian 来宾 (bananaLAN)
Docker 容器(路由)
可能这是某种路由问题,我不得不承认,这不是我的强项。我还仔细检查了是否完全遵循了围绕 qemu/libvirt 和 docker/macvlan 的几个文档,但显然我遗漏了一些东西。
我很感激任何帮助!非常感谢!
docker - Docker:按IP升序排列的多个macvlan
我有两个带有网络接口 Device0 和 Device1 的网络适配器,我想连接到 Container0 和 Container1。
每个容器都需要有自己的 IP 地址,然后是另一个,比如 172.16.0.10 到 172.16.0.11
我读过使用 macvlan 实用程序可能会很好。
使用以下代码,其中 i [0,1] 我尝试创建 2 个不同的 macvlan,连接所述设备:
该代码创建了第一个网络,但由于地址空间重叠,第二个网络失败
知道如何解决这个问题吗?
docker - 如何使用 Compose 创建具有用户定义的 IP 和 MAC 地址的 Docker macvlan
我有一个使用 MAC 地址执行硬件许可证的 docker 项目。我无法更改这一点,ISV 使用包含 MAC 地址的硬件指纹。
我正在尝试创建一个 macvlan 网络,它将使用物理适配器并从我的网络 DHCP 服务器获取 IP 地址,或者我将手动分配一个静态 IP 地址。我必须能够手动设置 MAC 地址,这样它就不会动态更改并使我的许可证密钥无效。
根据 Docker 文档,该mac_address
设置已被弃用,至少在 v3 模式中,但似乎在 v2 模式中得到尊重。
我有一个使用 vanilla LSIO Nginx 作为测试构建的配置,但运行失败并出现错误,指出无法分配 MAC 地址。
我正在使用 Docker for Windows 在 Win10 上进行测试。
如何在撰写中使用 macvlan 并设置 MAC 和 IP 或为 IP 使用 DHCP?
docker - Docker:无法删除 macvlan 配置网络
使用 portainer,我创建了一个 macvlan 配置网络。现在,我想删除这个网络。但是,由于某种原因,我不能。我确实收到以下错误消息:Error response from daemon: error while removing network: configuration network "my_macvlan_config" is in use
。奇怪的是,我不认为网络正在使用中。它没有连接容器。检查网络时,我得到以下结果:
Docker 本身正在我的 Synology Diskstation 上运行,fwiw。
编辑:有另一个网络称为macvlan
连接到my_macvlan_config
.
还有一个网络,显然是无关的。
然后我移除了tvheadend
容器。然后我能够删除所有网络,但my_macvlan_config
.