두 개의 브리지를 연결하면 한 방향으로만 작동합니다.

두 개의 브리지를 연결하면 한 방향으로만 작동합니다.

libvirt(KVM) 및 podman(1.6)이 설치된 Centos8 호스트가 있습니다.

libvirt는 "virbr0"이라는 브리지를 가져왔고 게스트는 192.168.122.0/24 범위의 주소로 연결됩니다. virbr0 자체에는 192.168.122.1이 있습니다. 게스트는 서로 대화하고, 호스트하고, 인터넷을 통해 대화할 수 있습니다. 아직까지 특별한 것은 없습니다...

libvirt 외에도 CNI와 함께 제공되는 Podman이 있는데, 이는 "cni-podman0"이라는 브리지를 제공하고 범위 10.88.0.0/16의 네트워크를 회전시킵니다.

자체 net ns를 사용하여 컨테이너를 생성할 때 wordpress 인스턴스를 가정해 보겠습니다. 예를 들어 컨테이너 IP 주소를 사용하여 호스트 및 libvirt 게스트에서 이 서비스에 연결할 수 있습니다.컬 -L 10.88.0.10.

그러나 반면에 Podman 컨테이너에서 libvirt 게스트에 연결하려고 하면 항상 "curl: (7) 192.168.122.14 포트 8443에 연결하지 못했습니다: 연결이 거부되었습니다"라는 메시지가 나타납니다. (<-아니요, 잊어버린 방화벽 설정은 아닙니다)

tcpdump를 사용하면 패킷이 컨테이너 브리지 "cni-podman0" 이상으로 이동하지 않는다는 것을 알 수 있습니다. (두 번의 "재전송" 후에는 포기합니다)

iptables는 나에게 정상적으로 보입니다.

iptables -nvL -t nat

Chain PREROUTING (policy ACCEPT 1540 packets, 192K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 75 packets, 6929 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 1412 packets, 86218 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 RETURN     all  --  *      *       192.168.122.0/24     224.0.0.0/24        
    0     0 RETURN     all  --  *      *       192.168.122.0/24     255.255.255.255     
    3   180 MASQUERADE  tcp  --  *      *       192.168.122.0/24    !192.168.122.0/24     masq ports: 1024-65535
    0     0 MASQUERADE  udp  --  *      *       192.168.122.0/24    !192.168.122.0/24     masq ports: 1024-65535
    0     0 MASQUERADE  all  --  *      *       192.168.122.0/24    !192.168.122.0/24    
    0     0 CNI-df70ac6052cc3121e6aed9de  all  --  *      *       10.88.0.16           0.0.0.0/0            /* name: "podman" id: "ae18985e3e1a0905bc04be8021bcacdd61436e682be24c08e2e53b0705baad33" */

Chain OUTPUT (policy ACCEPT 1412 packets, 86218 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain CNI-df70ac6052cc3121e6aed9de (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     all  --  *      *       0.0.0.0/0            10.88.0.0/16         /* name: "podman" id: "ae18985e3e1a0905bc04be8021bcacdd61436e682be24c08e2e53b0705baad33" */
    0     0 MASQUERADE  all  --  *      *       0.0.0.0/0           !224.0.0.0/4          /* name: "podman" id: "ae18985e3e1a0905bc04be8021bcacdd61436e682be24c08e2e53b0705baad33" */

...이 내용이 정확하다면 마지막 행은 멀티캐스트 주소에 속하지 않는 대상에 대한 모든 트래픽을 수집하라는 메시지를 표시합니다.

누군가 나를 올바른 길로 되돌려 놓을 수 있습니까? 감사합니다!

관련 정보