Google Cloud VPC-Netzwerk-Peering – DNS nicht gemeinsam genutzt?

Google Cloud VPC-Netzwerk-Peering – DNS nicht gemeinsam genutzt?

Ich habe zwei VPC-Netzwerke:

  • A
  • B

Sie sind über VPC-Netzwerk-Peering miteinander verbunden. Maschinen aus Netzwerk A können Maschinen aus Netzwerk B problemlos über IP erreichen.

Sie können jedoch nicht über ihre internen DNS-Namen (machinea.c.gc-project.internal) aufeinander zugreifen.

Entsprechend derGoogle Cloud-Dokumentationist dies nicht möglich, da Folgendes angegeben ist:

In einem Netzwerk erstellte interne DNS-Namen von Compute Engine sind für Peering-Netzwerke nicht zugänglich. Um die VM-Instanzen im Peering-Netzwerk zu erreichen, sollte die IP-Adresse der VM verwendet werden.

Wie kann ich das Problem lösen, damit sie die DNS-Namen tatsächlich verwenden können?

Im Moment habe ich die IPs einfach in die Hostdateien des jeweils anderen eingefügt, aber es müsste doch einen besseren Weg geben, oder?

Antwort1

Bis zu einem gewissen Grad haben Sie Ihre Frage bereits selbst beantwortet. Sie haben Recht, laut der von Ihnen referenzierten Dokumentation ist das interne DNS-Schema derzeit über VPC-Peering auf GCP nicht verfügbar.

Sie haben drei Möglichkeiten.

  1. Verwenden Sie Hosts-Dateien, wie Sie es bisher getan haben. Dies ist einfach einzurichten, kann aber komplex zu verwalten sein, wenn Ihre Umgebung wächst. Sie könnten sich jedoch Konfigurationsverwaltungstools zunutze machen, um Updates automatisch zu verteilen und zu verwalten – z. B. Ansible.

  2. Sie könnten eine neue DNS-Zone auf Google Cloud DNS bereitstellen. Weitere Einzelheiten zu diesem Dienst finden Sie hier:Cloud DNS Übersicht Allerdings ist dieser Dienst derzeit nur für öffentliche Zonen verfügbar, Sie müssen also eine Domain registrieren oder eine bereits vorhandene verwenden. Und als öffentliche Zone wären die Namen im Internet auflösbar, was wünschenswert sein kann oder auch nicht. Sie könnten auch einen externen öffentlichen DNS-Anbieter verwenden.

  3. Stellen Sie Ihre eigenen DNS-Server bereit. Sie könnten BIND oder ähnliches auf virtuellen Maschinen als DNS-Server einrichten. Sie müssten die DNS-Einstellungen auf den VMs aktualisieren, um diese neuen Server verwenden zu können, und ich würde aus Gründen der Ausfallsicherheit vorschlagen, mindestens zwei bereitzustellen, beispielsweise einen in jedem Ihrer VPCs. Der Hauptvorteil wäre, dass die Zone privat sein kann, sodass Sie keinen Domänennamen kaufen oder die Datensätze im Internet offenlegen müssen. Natürlich müssten Sie die DNS-Server warten, was wünschenswert sein kann oder auch nicht. Sie könnten auch private Remote-DNS-Server ausführen, beispielsweise über ein VPN, aber das würde ich nicht unbedingt empfehlen, da Sie dann eine starke Abhängigkeit von der VPN-Verbindung schaffen.

Es ist erwähnenswert, dass sowohl AWS als auch Azure private Zonen als Teil ihrer eigenen DNS-Dienste unterstützen. Es ist also nicht undenkbar, dass Google in Zukunft Unterstützung für Ähnliches hinzufügen wird.

Hoffentlich hilft das.

verwandte Informationen