บนอินทราเน็ตของงานของฉันเรามีแอปพลิเคชันภายในที่ไม่สามารถใช้ได้ในที่สาธารณะเช่น: app1.example.com, app2.example.com ในขณะที่มีเว็บไซต์สาธารณะสาธารณะ example.com ทั้ง app1.example.com และ app2.example.com กำลังแก้ไขเป็น ip ของอินทราเน็ต
ดังนั้นเท่าที่ฉันค้นหาฉันพบว่าสิ่งนี้เป็นไปได้โดยมีเซิร์ฟเวอร์ DNS ในตัวเครื่องไว้ในอินทราเน็ตของเรา
ดังนั้นฉันจึงต้องการทำซ้ำโดยใช้ Virtualbox VMs ดังนั้นจึงใช้ Ubuntu 3 ชุดซึ่งเป็นหนึ่งใน Xubuntu ของ Vm, หนึ่ง Lubuntu และหนึ่งใน Ubuntu Budgie Edition ที่เหลือจากการทดลองก่อนหน้านี้ พวกเขาทั้งหมดมีอะแดปเตอร์เครือข่าย 2 ตัว:
- หนึ่งการตั้งค่าเป็น NAT และ
- อีกอันหนึ่งเป็น 'เครือข่ายภายใน' ที่มีสแตติกมี ips จาก
192.0.0.0/24
เครือข่าย
ใน Xubuntu ฉันติดตั้ง bind9 และเว็บเซิร์ฟเวอร์และฉันพยายามจำลองด้วยการพิมพ์ลงในเบราว์เซอร์ของ Xubuntu และ Budgie Edition Vms 'app1.intranet.example.com และ app2.intranet.example.com เพื่อให้บริการ 2 ไซต์ที่แตกต่างกัน ไซต์เหล่านี้จะไม่สามารถใช้งานได้นอกเครือข่าย (ของ theese 3 Vms) จะไม่สามารถแก้ไขรายการ DNS สำหรับไซต์ theese 2 ได้
สำหรับตอนนี้บน vm ที่ใช้การเชื่อม (Xubuntu One) มีการตั้งค่าเหล่านี้:
options {
directory "/var/cache/bind";
// If there is a firewall between you and nameservers you want
// to talk to, you may need to fix the firewall to allow multiple
// ports to talk. See http://www.kb.cert.org/vuls/id/800113
// If your ISP provided one or more IP addresses for stable
// nameservers, you probably want to use them as forwarders.
// Uncomment the following block, and insert the addresses replacing
// the all-0's placeholder.
forwarders {
208.67.222.222;
208.67.220.220;
};
//========================================================================
// If BIND logs error messages about the root key being expired,
// you will need to update your keys. See https://www.isc.org/bind-keys
//========================================================================
dnssec-validation auto;
auth-nxdomain no; # conform to RFC1035
listen-on-v6 { any; };
};
acl "intranet" { 192.0.0.1/24; };
view "intranetView" {
match-clients { "intranet"; };
recursion yes;
zone "intranet.example.com" {
type master;
file "/etc/bind/db.intranet"
}
}
view "outside" {
match-clients { any; }
recursion no;
}
นอกจากนี้ใน/etc/bind/db.intranet
ฉันมีรายการต่อไปนี้:
;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA intranet.example.com. root.example.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS 192.0.0.2
@ IN A 192.0.0.2
app1 IN A 192.0.0.2
app2 IN A 192.0.0.2
แต่ด้วยเหตุผลบางอย่างเมื่อฉันพยายามที่จะเริ่มผูกพันมันล้มเหลว คุณช่วยฉันหาปัญหาได้ไหม?