Thứ Tư, 21 tháng 1, 2026

Cấu hình DNS cho quá trình quét được sử dụng với Oracle RAC Database 11g Release 2

Bài viết này cung cấp các bước cấu hình DNS cơ bản cần thiết để sử dụng Tên truy cập máy khách đơn (SCAN) được giới thiệu trong Oracle 11g Release 2 RAC. Vui lòng xem xét các lưu ý sau trước khi làm theo hướng dẫn ở đây:

  • Tôi không phải là chuyên gia mạng và cũng không tự nhận mình biết nhiều về DNS.
  • Bài viết chỉ thảo luận về việc sử dụng BIND làm máy chủ DNS trên Oracle Linux (một bản sao của RHEL).
  • Đây là những điều tối thiểu bạn cần làm để quá trình quét hoạt động. Không nên coi đây là hướng dẫn về thực tiễn tốt nhất vì nó không đề cập đến tính dự phòng hoặc bảo mật của DNS.
  • Đối với các cài đặt RAC trên VMware/VirtualBox, cấu hình DNS này nên được thực hiện trên máy chủ hoặc trên một máy ảo khác tách biệt với cụm RAC nếu có thể. Nó cũng có thể được đặt trên một trong các nút RAC, nhưng điều này có nghĩa là tất cả quá trình phân giải tên sẽ bị mất nếu nút RAC đó ngoại tuyến.
  • Máy chủ được sử dụng trong bài viết này có tên là "maggie.localdomain" và địa chỉ IP là "192.168.0.4".

Với những lưu ý đó, đây là những việc bạn cần làm.

  • Cài đặt DNS
  • Tệp "/etc/named.conf"
  • Tệp "/var/named/"
  • Khởi động dịch vụ DNS
  • Tệp "/etc/resolv.conf"
  • Hãy thử nghiệm nó!
  • BIND trên Windows

Các bài viết liên quan.

Cài đặt DNS

Nếu bạn đang sử dụng bản phân phối Linux miễn phí, như Fedora , thì có lẽ bạn đã cấu hình sẵn kho lưu trữ YUM. Nếu bạn đang sử dụng Oracle Linux, hãy làm theo hướng dẫn cấu hình trên public-yum.oracle.com .

Việc cài đặt máy chủ DNS (BIND) vô cùng đơn giản. Từ dòng lệnh, hãy nhập lệnh sau.

# yum install bind-libs bind bind-utils

Nếu bạn muốn có trình chỉnh sửa DNS giao diện đồ họa (GUI), bạn cũng có thể cài đặt gói sau. Cá nhân tôi thấy trình chỉnh sửa GUI khó hiểu hơn so với việc sử dụng trực tiếp các tệp cấu hình.

# yum install system-config-bind

Nếu các tệp cấu hình không có sẵn (như trường hợp trong Oracle Linux 5), bạn nên cài đặt tiện ích "system-config-bind" và khởi chạy nó. Thao tác này sẽ tạo ra một thiết lập mặc định gồm tất cả các tệp cấu hình phụ thuộc để bạn chỉnh sửa. Cách này dễ hơn nhiều so với việc tự tạo chúng thủ công.

Tệp "/etc/named.conf"

Tiếp theo, chúng ta cần chỉnh sửa nội dung của tệp "/etc/named.conf". Tùy thuộc vào cấu hình bạn yêu cầu, bạn có thể cần thực hiện nhiều thay đổi hoặc không cần thay đổi gì cả. Đối với mạng gia đình của tôi, tôi sử dụng "localdomain" làm tên miền và dải IP "192.168.0.*", vì vậy đây là những gì tôi sẽ trình bày ở đây.

Chúng ta cần đảm bảo DNS đang lắng nghe trên đúng cổng cho cả địa chỉ IP cục bộ và bên ngoài. Điều này được thực hiện bằng thiết lập "listen-on". Máy chủ DNS này chỉ phân giải tên của các máy chủ trên mạng của tôi, vì vậy tôi cần đảm bảo rằng các máy chủ trên mạng bên ngoài, chẳng hạn như internet, cũng được phân giải đúng cách. Để làm điều này, bạn thêm một mục "forwarder" vào cuối phần "options".

options {
        // Set IP address correctly.
        listen-on port 53 { 127.0.0.1; 192.168.0.4; };

        // If allow-query is present, set it to your subnets, or remove it,
        // which is the equivalent of "allow-query {any;};"
        allow-query     { 127.0.0.0; 192.168.0.0; };

        //
        // Leave the rest of the config as it is.
        //

        // My Additions
        // Forwarder: Anything this DNS can't resolve gets forwarded to my ISPs DNS.
        forwarders { 194.168.4.100; 194.168.8.100; };
	// End My Additions
};

Trong trường hợp này, tôi đang sử dụng thông tin DNS do nhà cung cấp dịch vụ Internet (ISP) của tôi cung cấp, nhưng bạn cũng có thể liệt kê thông tin DNS của bộ định tuyến ADSL nếu nó quản lý DNS cho bạn.

Vì tôi đang sử dụng "localdomain" làm tên miền nội bộ, nên tôi cần thêm một vùng (zone) nếu nó chưa tồn tại.

zone "localdomain." IN {
        type master;
        file "localdomain.zone";
        allow-update { none; };
};

Nếu bạn dự định sử dụng một tên miền khác, chỉ cần sao chép mục này và điều chỉnh cho phù hợp với tên miền của bạn. Ví dụ, nếu đây là mục dành cho "oracle-base.com", tôi sẽ tạo vùng như sau.

zone "oracle-base.com" IN {
        type master;
        file "tranvanbinh.vn.zone";
        allow-update { none; };
};

Tham số "file" chỉ định tên của tệp trong thư mục "/var/named/" chứa cấu hình cho vùng này.

Nếu bạn chỉ quan tâm đến việc tra cứu thuận thì bạn đã hoàn thành việc chỉnh sửa tệp "/etc/named.conf". Nếu bạn muốn xử lý cả việc tra cứu ngược, bạn sẽ cần thêm một vùng (zone) nữa để xử lý việc đó. Trong trường hợp cài đặt RAC, tôi muốn tạo tra cứu ngược cho mạng công cộng (192.169.0.*) của mình, vì vậy tôi phải thêm mục nhập vùng sau.

zone "0.168.192.in-addr.arpa." IN {
        type master;
        file "0.168.192.in-addr.arpa";
        allow-update { none; };
};

Dưới đây là ví dụ về các tệp "/etc/named.conf" mặc định đã được sửa đổi.

  • Fedora16
  • Oracle Linux 5
  • Oracle Linux 6

Tệp "/var/named/"

Trong phần định nghĩa vùng, chúng ta đã xác định tệp chứa cấu hình vùng. Các tệp này nằm trong thư mục "/var/named/". Nếu bạn đang sử dụng phiên bản "chroot" của BIND, vị trí của các tệp sau sẽ là "/var/named/chroot/var/named" và bạn có thể cần thay đổi quyền sở hữu nhóm của chúng thành "named".

Đối với cài đặt RAC, hãy tạo/chỉnh sửa tệp liên kết với vùng của bạn (trong trường hợp của tôi là "/var/named/localdomain.zone") sao cho giống với tệp bên dưới.

$TTL    86400
@               IN SOA  localhost root.localhost (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
                IN NS           localhost
localhost       IN A            127.0.0.1
rac1            IN A    192.168.0.101
rac2            IN A    192.168.0.102
rac1-priv       IN A    192.168.1.101
rac2-priv       IN A    192.168.1.102
rac1-vip        IN A    192.168.0.111
rac2-vip        IN A    192.168.0.112
rac-scan        IN A    192.168.0.121
rac-scan        IN A    192.168.0.122
rac-scan        IN A    192.168.0.123

Tôi giữ nguyên cấu hình mặc định, nhưng đã thêm thông tin tra cứu chuyển tiếp của mình. Hãy chú ý đến ba mục dành cho SCAN.

Tiếp theo, tôi cần tạo tệp "/var/named/0.168.192.in-addr.arpa" để tra cứu ngược trên mạng công cộng. Tệp này có nội dung như sau, trong đó "maggie.localdomain" là tên của máy chủ DNS.

$ORIGIN 0.168.192.in-addr.arpa.
$TTL 1H
@       IN      SOA     maggie.localdomain.     root.maggie.localdomain. (      2
                                                3H
                                                1H
                                                1W
                                                1H )
0.168.192.in-addr.arpa.         IN NS      maggie.localdomain.

101     IN PTR  rac1.localdomain.
102     IN PTR  rac2.localdomain.
111     IN PTR  rac1-vip.localdomain.
112     IN PTR  rac2-vip.localdomain.
121     IN PTR  rac-scan.localdomain.
122     IN PTR  rac-scan.localdomain.
123     IN PTR  rac-scan.localdomain.

Khởi động dịch vụ DNS

Sau khi thiết lập cấu hình, chúng ta có thể khởi động dịch vụ DNS, có tên là "named".

# service named start
Starting named:                                            [  OK  ]
#

Nếu có bất kỳ sự cố nào với cấu hình của bạn, dịch vụ sẽ không khởi động được và lỗi sẽ hiển thị ngay lập tức trên màn hình. Nếu lỗi không xuất hiện, hãy kiểm tra tệp "/var/log/messages".

Thực hiện lệnh sau để đảm bảo dịch vụ "named" tự động khởi động sau khi khởi động lại hệ thống.

# chkconfig named on

Tệp "/etc/resolv.conf"

Máy chủ DNS hiện đang hoạt động, nhưng mỗi máy chủ cần được cấu hình để sử dụng nó. Việc này được thực hiện bằng cách chỉnh sửa tệp "/etc/resolv.conf" trên mỗi máy chủ, bao gồm cả các nút RAC. Hãy đảm bảo tệp này chứa các mục sau, trong đó địa chỉ IP và tên miền khớp với địa chỉ IP và tên miền của máy chủ DNS và tên miền bạn đã cấu hình.

nameserver 192.168.0.4
search localdomain

Nếu mạng của bạn được điều khiển bởi NetworkManager, bạn có thể thấy tệp "/etc/resolv.conf" bị ghi đè khi các bộ điều hợp mạng cụ thể được khởi động lại. Nếu vậy, bạn có thể cần chỉnh sửa các cài đặt sau trong các tập lệnh bộ điều hợp mạng nằm trong thư mục "/etc/sysconfig/network-scripts/".

# ol6 : /etc/sysconfig/network-scripts/eth0 (eth1, eth2 etc.)
# ol7 : /etc/sysconfig/network-scripts/enp0s3 (enp0s8, enp0s9 etc.)
DNS1=192.168.0.4
DOMAIN=localdomain

Hãy thử nghiệm!

Giờ đây bạn có thể kiểm tra tra cứu thuận và nghịch bằng lệnh "nslookup". Kết quả bên dưới hiển thị quá trình tra cứu thuận và nghịch của địa chỉ SCAN.

# nslookup rac-scan.localdomain
Server:         192.168.0.4
Address:        192.168.0.4#53

Name:   rac-scan.localdomain
Address: 192.168.0.121
Name:   rac-scan.localdomain
Address: 192.168.0.122
Name:   rac-scan.localdomain
Address: 192.168.0.123

# nslookup 192.168.0.121
Server:         192.168.0.4
Address:        192.168.0.4#53

121.0.168.192.in-addr.arpa      name = rac-scan.localdomain.

# nslookup 192.168.0.122
Server:         192.168.0.4
Address:        192.168.0.4#53

122.0.168.192.in-addr.arpa      name = rac-scan.localdomain.

# nslookup 192.168.0.123
Server:         192.168.0.4
Address:        192.168.0.4#53

123.0.168.192.in-addr.arpa      name = rac-scan.localdomain.

#

BIND trên Windows

Quá trình cấu hình BIND trên Windows thực chất gần như giống hệt với trên Linux.

  • Tải phần mềm từ đây .
  • Giải nén phần mềm.
  • Khởi chạy "BINDInstall.exe" bằng cách chọn "Chạy với quyền quản trị viên".
  • Đặt Thư mục đích thành "c:\named" và Tên tài khoản dịch vụ thành "named". Giữ nguyên các thiết lập mặc định và nhấp vào nút "Cài đặt".
  • Sau khi quá trình cài đặt hoàn tất, hãy nhấp vào "OK" và thoát khỏi trình cài đặt.
  • Tạo hoặc chỉnh sửa tệp có tên "C:\named\etc\named.conf" sao cho có nội dung như sau. Điều chỉnh theo yêu cầu.
    options {
      listen-on port 53 { 127.0.0.1; 192.168.0.0/24; };
      directory "c:\named\zones";
      allow-transfer { none; };
      recursion no;
      forwarders { 194.168.4.100; 194.168.8.100; };
    };
    
    zone "localdomain." IN {
      type master;
      file "localdomain.zone";
      allow-transfer { none; };
    };
    
    zone "0.168.192.in-addr.arpa." IN {
      type master;
      file "0.168.192.in-addr.arpa";
      allow-update { none; };
    };
  • Hãy tạo các tệp "C:\named\zones\localdomain.zone" và "C:\named\zones\0.168.192.in-addr.arpa" như đã mô tả trước đó.
  • Khởi động lại dịch vụ Windows "ISC Bind" sau khi thực hiện bất kỳ thay đổi cấu hình nào.
  • Mở tường lửa Windows để cho phép truy cập TCP và UDP vào cổng 53.

Với cấu hình như vậy, bạn có thể thực hiện tra cứu sau trực tiếp trên máy tính Windows.

C:\>nslookup ol7-121-scan.localdomain 127.0.0.1
Server:  UnKnown
Address:  127.0.0.1

Name:    ol7-121-scan.localdomain
Addresses:  192.168.0.121
          192.168.0.122
          192.168.0.123

C:\>

Để biết thêm thông tin chi tiết, vui lòng xem:

Hi vọng điều này sẽ hữu ích

=============================
TƯ VẤN: Click hoặc Hotline/Zalo 090.29.12.888
=============================
Website không chứa bất kỳ quảng cáo nào, mọi đóng góp để duy trì phát triển cho website (donation) xin vui lòng gửi về STK 90.2142.8888 - Ngân hàng Vietcombank Thăng Long - TRAN VAN BINH
=============================
Nếu bạn không muốn bị AI thay thế và tiết kiệm 3-5 NĂM trên con đường trở thành DBA chuyên nghiệp hay làm chủ Database thì hãy đăng ký ngay KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE, được Coaching trực tiếp từ tôi với toàn bộ bí kíp thực chiến, thủ tục, quy trình của gần 20 năm kinh nghiệm (mà bạn sẽ KHÔNG THỂ tìm kiếm trên Internet/Google) từ đó giúp bạn dễ dàng quản trị mọi hệ thống Core tại Việt Nam và trên thế giới, đỗ OCP.
- CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
- Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
2 khóa học online qua video giúp bạn nhanh chóng có những kiến thức nền tảng về Linux, Oracle, học mọi nơi, chỉ cần có Internet/4G:
- Oracle cơ bản: https://bit.ly/admin_1200
- Linux: https://bit.ly/linux_1200
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
cơ sở dữ liệu, cơ sở dữ liệu quốc gia, database, AI, trí tuệ nhân tạo, artificial intelligence, machine learning, deep learning, LLM, ChatGPT, DeepSeek, Grok, oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c/21c/23c/23ai, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, docker, k8s, micro service, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master