OpenVZ 7ハードウェアノードを使用して*すべての*コンテナタイプに対してネームサービスキャッシュを実行するには?

OpenVZ 7ハードウェアノードを使用して*すべての*コンテナタイプに対してネームサービスキャッシュを実行するには?

私は数年間OpenVZの使用をやめましたが、今戻ってきました。私は何時間もこの簡単な仕事に閉じ込められていました。

ハードウェアノードをローカルDNSキャッシュとして使用したいと思います。みんなコンテナタイプ(このパラダイムは私にとって新しい概念です)、ホストとブリッジ。

コンテナだけあります。

ブリッジコンテナとホスト専用コンテナをdnsmasqそれぞれ受信するようにインターフェイスを正常に設定しました。この手順を確認でき、動作します。br0virbr0dig @interface <public host name>

うまくいかないもの:

  • すべてのコンテナの名前解決タイムアウト
  • ハードウェアノードアドレスをpingしても応答がありません。

ハードウェアノードで:

# prlsrvctl net list
Network ID        Type      Bound To       Bridge         Slave interfaces
Bridged           bridged   enp2s0         br0                           
Host-Only         host-only                virbr0                        

そしてvirbr0: 10.37.130.2/24そしてbr0:192.168.xx.5/28

prlctl set <my test container @ 192.168.xx.4> --nameserver 10.37.130.2名前解決はありませんが、これを実行しています。

考えるルールを追加する必要がありますが、iptablesローカルプロセスにもルールが多すぎます!常識でさえ役に立ちません。両方のインターフェイスで、ポート53でUDPパケットを許可するためのルールを追加してみました。

何を破るのか分からない。

  • dnsmasqDNS要求が受信されたかどうかわからない
  • 答えがあるかもしれません。
  • ファイアウォールによって応答がブロックされるかどうかわかりません。

tcpdumpファイアウォールルールを追加するかどうかにかかわらず、私に何が起こるかは次のとおりです。

# tcpdump
tcpdump: WARNING: venet0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on venet0, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes
23:03:20.876113 IP 192.168.xx.4.53894 > myhostname.local.domain: 32621+ A? google.com. (28)
23:03:25.875974 IP 192.168.xx.4.53894 > myhostname.local.domain: 32621+ A? google.com. (28)
^C
2 packets captured
2 packets received by filter
0 packets dropped by kernel

host google.comこのコマンドを使用してコンテナで簡単な操作を実行すると、これが発生しますhost

そのコンテナから:

# ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=39 time=328 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=39 time=19.8 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=39 time=20.3 ms
64 bytes from 8.8.8.8: icmp_seq=4 ttl=39 time=20.3 ms
64 bytes from 8.8.8.8: icmp_seq=5 ttl=39 time=44.1 ms
64 bytes from 8.8.8.8: icmp_seq=6 ttl=39 time=20.4 ms
^C
--- 8.8.8.8 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5002ms
rtt min/avg/max/mdev = 19.836/75.699/328.996/113.614 ms

それでは、なぜ...ファイアウォールにこれらの規則がリストされていますか?

-A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT

がっかりするほど複雑です。

関連情報