iptables를 시작하면 브리지를 통해 연결된 두 가상 머신 간의 통신이 중지됩니다.

iptables를 시작하면 브리지를 통해 연결된 두 가상 머신 간의 통신이 중지됩니다.

인터페이스 gre1을 사용하여 두 개의 가상 머신 VM1과 VM2 사이에 eth2라는 브리지를 만들었습니다.

아래는 브리지 장치 eth2가 있는 VM1입니다.

# brctl show
bridge name     bridge id               STP enabled     interfaces
eth2            8000.162f8564eb74       no              gre1

VM1의 인터페이스 IP는 172.80.1.1이고 VM2의 인터페이스 IP는 172.80.1.2입니다. VM1에서 iptables가 중지되면 VM1에서 VM2의 인터페이스 IP로 ping을 보낼 수 있습니다. 그러나 iptables를 시작한 후에는 ping이 작동하지 않습니다.

# ping 172.80.1.2
PING 172.80.1.2 (172.80.1.2) 56(84) bytes of data.
--- 172.80.1.2 ping statistics ---
6 packets transmitted, 0 received, 100% packet loss, time 5240ms

이것이 내 iptables의 모습입니다.

    # iptables -L -n -v
Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
72854   10M ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           /* 10defaults */
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           /* 10defaults */
   75  5428 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED /* 10defaults */
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp dpt:22 /* 20ssh */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80 /* 30https */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:443 /* 30https */
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp dpt:162 /* 50snmp-health */
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp dpt:162 /* 50snmp-health */
    0     0 ACCEPT     udp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           udp dpt:123 /* 60ntp */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:5671 /* 70rabbitmq */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:3999 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4000 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4001 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4002 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4003 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4004 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4005 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4006 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4007 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4008 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4009 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4010 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4011 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4012 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4013 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4014 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4015 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4016 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4017 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4018 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4019 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4020 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4021 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4022 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:4023 /* 80debug */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:15672 /* 85rabbitmq-ui */
 1250  250K REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           /* 99finish */ reject-with icmp-host-prohibited
    0     0 ACCEPT     udp  --  eth2   *       0.0.0.0/0            0.0.0.0/0           udp dpt:162 /* eth2_RULE */
    0     0 ACCEPT     tcp  --  eth2   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:9990 /* eth2_RULE */
    0     0 ACCEPT     tcp  --  eth0   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:9990 /* eth2_RULE */
    0     0 ACCEPT     tcp  --  eth2   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:443 /* eth2_RULE */
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0           udp spt:53
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp spt:80 state ESTABLISHED
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp spt:443 state ESTABLISHED

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     all  --  eth2   *       0.0.0.0/0            0.0.0.0/0

Chain OUTPUT (policy ACCEPT 72917 packets, 10M bytes)
 pkts bytes target     prot opt in     out     source               destination

반품,sysctl -a | grep bridge-nf gives

net.bridge.bridge-nf-call-arptables = 0
net.bridge.bridge-nf-call-iptables = 0
net.bridge.bridge-nf-call-ip6tables = 0
net.bridge.bridge-nf-filter-vlan-tagged = 0
net.bridge.bridge-nf-filter-pppoe-tagged = 0

이 기능이 작동하지 않는 원인은 무엇입니까? 여기에 iptable 규칙에 문제가 있습니까?

답변1

gre 터널 인터페이스 gre1의 정책을 수락하도록 설정했습니다.

iptables -I INPUT -p gre -j ACCEPT

이것은 내가 그것을 작동시키는 데 도움이됩니다.

관련 정보