S1
가상 머신 1: Ubuntu 앱 서버
가상 머신 2: MariaDB 1
S2
가상 머신 3: Ubuntu 앱 서버
가상 머신 4: MariaDB 2
vm04 및 03에서 포트 3306의 연결 문자열을 사용하여 DB1에 연결할 수 있지만 vm01 및 02에서 DB2에 연결할 수 없습니다.
Telnet은 3306에서 DB2로 연결할 수 있습니다.
DB의 MariaDB 10.6과 모든 VM의 구성은 모두 동일합니다. VM03은 DB2에 연결할 수 있습니다.
tcpdump를 사용하여 DB2 트래픽을 수신하면 요청이 DB에 도착하는 것을 볼 수 있지만 그 후에 무슨 일이 일어나는지는 정확히 알 수 없습니다.
어떤 아이디어라도:
netstat -tulpn | grep 듣기 | 그렙 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 5145/mariadbd
tcp6 0 0 :::3306 :::* LISTEN 5145/mariadbd
편집하다:
DB1의 오류 메시지
2023-02-27 12:32:17 5771 [Warning] Aborted connection 5771 to db: 'testdev' user: 'testuser' host: 'vm02' (Got timeout reading communication packets)
경로 -n(db2)
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
0.0.0.0 PublicIP 0.0.0.0 UG 0 0 0 eth0
0.0.0.0 192.168.1.151 0.0.0.0 UG 0 0 0 eth0
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
s1 192.168.2.0/24
s2 192.168.1.0/24
iptables
iptables -A FORWARD -p tcp --source 192.168.2.1/24 --dport 3306 -j ACCEPT
iptables -A FORWARD -p tcp --source 192.168.2.1/24 --dport 3307 -j ACCEPT
iptables -A INPUT -p tcp --source 192.168.2.1/24 --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --source 192.168.2.1/24 --dport 3307 -j ACCEPT
same for 1.1./24 subnets