Cách định cấu hình dnsmasq trên Ubuntu Server 18.04 LTS

How Configure Dnsmasq Ubuntu Server 18



dnsmasq là một máy chủ DNS cục bộ rất nhẹ. dnsmasq cũng có thể được cấu hình như một máy chủ bộ nhớ cache DNS và máy chủ DHCP. dnsmasq có hỗ trợ IPv4 và IPv6 bao gồm DHCPv4 và DHCPv6. dnsmasq là lý tưởng cho mạng nhỏ.

Trong bài viết này, chúng tôi sẽ giới thiệu cho các bạn cách sử dụng dnsmasq để cấu hình máy chủ DNS cục bộ, máy chủ DNS bộ nhớ đệm và máy chủ DHCP. Vậy hãy bắt đầu.







Cấu trúc mạng:

Đây là cấu trúc liên kết mạng của bài viết này. Ở đây, tôi sẽ cấu hình bộ định tuyến làm máy chủ DNS và DHCP với dnsmasq. bộ định tuyến có 2 giao diện mạng, một ( ens33 ) kết nối với Internet và điều khác ( sau38 ) kết nối với một mạng swtich . Tất cả các máy chủ khác ( host1 , host2 , host3 ) trên mạng sử dụng máy chủ DHCP được định cấu hình trên bộ định tuyến để tự động gán địa chỉ IP và máy chủ DNS để phân giải tên.





Định cấu hình IP tĩnh:

Trong cấu trúc liên kết mạng của tôi, bạn đã thấy, bộ định tuyến có hai giao diện ens33sau38 . ens33 kết nối bộ định tuyến với internet và sau38 được kết nối với một chuyển mạng , mà các máy tính khác trên mạng kết nối với. Tôi sẽ phải sử dụng DHCP để lấy địa chỉ IP cho ens33 giao diện từ ISP của tôi để kết nối internet. Nhưng sau38 giao diện phải được cấu hình thủ công.





Hãy sử dụng mạng 192.168.10.0/24 cho giao diện ens38 và các máy tính khác trong mạng. Nếu tôi sử dụng mạng 192.168.10.0/24, thì địa chỉ IP của sau38 giao diện của bộ định tuyến phải là 192.168.10.1/24. Đây là địa chỉ IP của máy chủ dnsmasq DNS và máy chủ DHCP.

GHI CHÚ: Tên giao diện mạng của bạn có thể khác. Bạn có thể tìm hiểu nó là gì cho bạn với ip a chỉ huy.



Trên Ubuntu Server 18.04 LTS, bạn có thể sử dụng netplan để cấu hình các giao diện mạng. Tệp cấu hình netplan mặc định là /etc/netplan/50-cloud-init.yaml .

Đầu tiên, hãy mở tệp cấu hình /etc/netplan/50-cloud-init.yaml bằng lệnh sau:

$sudo nano /Vân vân/netplan/năm mươi-cloud-init.yaml

Bây giờ, hãy nhập các dòng sau và lưu tệp bằng cách nhấn + NS theo dõi bởi .

Bây giờ, khởi động lại bộ định tuyến bằng lệnh sau:

$sudokhởi động lại

Một khi bộ định tuyến khởi động, địa chỉ IP nên được chỉ định như mong đợi.

Cài đặt dnsmasq:

dnsmasq có sẵn trong kho gói chính thức của Ubuntu. Vì vậy, bạn có thể dễ dàng cài đặt nó bằng trình quản lý gói APT.

Ubuntu sử dụng hệ thống giải quyết theo mặc định để quản lý máy chủ DNS và bộ nhớ đệm DNS. Trước khi cài đặt dnsmasq, bạn phải dừng và tắt hệ thống giải quyết dịch vụ. Nếu không, bạn sẽ không thể chạy dnsmasq.

Để ngăn chặn hệ thống giải quyết dịch vụ, chạy lệnh sau:

$sudosystemctl dừng systemd-giải quyết

Để vô hiệu hóa hệ thống giải quyết dịch vụ, chạy lệnh sau:

$sudosystemctl vô hiệu hóa systemd-giải quyết

Theo mặc định, /etc/resolv.conf tệp được liên kết với tệp cấu hình systemd khác như bạn có thể thấy trong ảnh chụp màn hình bên dưới. Nhưng, chúng tôi không muốn nó nữa.

Vì vậy, hãy loại bỏ /etc/resolv.conf liên kết với lệnh sau:

$sudo rm -v /Vân vân/Resolutionv.conf

Bây giờ, hãy tạo một /etc/resolv.conf và đặt máy chủ DNS google làm máy chủ DNS mặc định bằng lệnh sau:

$quăng đi 'máy chủ định danh 8.8.8.8' | sudo tee /Vân vân/Resolutionv.conf

Bây giờ, hãy cập nhật bộ nhớ cache của kho lưu trữ gói APT bằng lệnh sau:

$sudocập nhật apt

Bây giờ, cài đặt dnsmasq bằng lệnh sau:

$sudođúng cáchTải vềdnsmasq

dnsmasq nên được cài đặt.

Định cấu hình Máy chủ DNS dnsmasq:

Tệp cấu hình của dnsmasq là /etc/dnsmasq.conf . Để định cấu hình dnsmasq làm máy chủ DNS, bạn phải sửa đổi tệp này.

Mặc định /etc/dnsmasq.conf tệp chứa rất nhiều tài liệu và các tùy chọn nhận xét. Vì vậy, tôi nghĩ tốt hơn là nên đổi tên /etc/dnsmasq.conf nộp cho /etc/dnsmasq.conf.bk và tạo một cái mới.

Bạn có thể đổi tên tệp cấu hình bằng lệnh sau:

$sudo mv -v /Vân vân/dnsmasq.conf/Vân vân/dnsmasq.conf.bk

Bây giờ, hãy tạo tệp cấu hình /etc/dnsmasq.conf như sau:

$sudo nano /Vân vân/dnsmasq.conf

Bây giờ, hãy nhập các dòng sau và lưu tệp bằng cách nhấn + NS theo dõi bởi .

# Cấu hình DNS
Hải cảng=53

miền cần thiết
không có thật
trật tự nghiêm ngặt

máy chủ mở rộng
miền= example.com

GHI CHÚ: Thay đổi example.com đến tên miền của riêng bạn.

Bây giờ, khởi động lại dịch vụ dnsmasq bằng lệnh sau:

$sudosystemctl khởi động lại dnsmasq

Không có lỗi. Tuyệt vời!

Bây giờ, bạn phải thiết lập 192.168.10.1 làm địa chỉ máy chủ DNS mặc định trong /etc/resolv.conf .

Để làm điều đó, hãy mở /etc/resolv.conf tệp bằng lệnh sau:

$sudo nano /Vân vân/Resolutionv.conf

Bây giờ, hãy nhập máy chủ định danh 192.168.10.1 trước dòng máy chủ định danh 8.8.8.8 như thể hiện trong ảnh chụp màn hình bên dưới. Sau đó, lưu tệp.

Đó là nó.

Thêm bản ghi DNS:

Bây giờ, bạn có thể thêm các mục nhập DNS của mình vào / etc / hosts tập tin.

Đầu tiên, hãy mở / etc / hosts tệp bằng lệnh sau:

$sudo nano /Vân vân/máy chủ

Bây giờ, hãy nhập các mục nhập DNS của bạn theo định dạng sau:

IP_ADDR DOMAIN_NAME

Tôi đã thêm 4 mục nhập router.example.com (192.168.10.1) , host1.example.com (192.168.10.51) , host2.example.com (192.168.10.52) , và host3.example.com (192.168.10.53) như được đánh dấu trong ảnh chụp màn hình bên dưới. Bạn có thể thêm bao nhiêu mục DNS tùy thích.

Sau khi hoàn tất, hãy lưu tệp bằng cách nhấn + NS theo dõi bởi .

Bây giờ, khởi động lại dịch vụ dnsmasq bằng lệnh sau:

$sudosystemctl khởi động lại dnsmasq

Kiểm tra Máy chủ DNS:

Như bạn có thể thấy, giải pháp DNS cục bộ hoạt động.

$bạnrouter.example.com

Độ phân giải tên Internet cũng hoạt động.

$bạnGoogle com

Cấu hình Máy chủ DHCP:

Để định cấu hình máy chủ DHCP, hãy mở tệp cấu hình dnsmasq /etc/dnsmasq.conf một lần nữa như sau:

$sudo nano /Vân vân/dnsmasq.conf

Bây giờ, thêm các dòng được đánh dấu vào cuối tệp. Sau đó, lưu tệp.

# Cấu hình DHCP
dhcp-range = 192.168.10.50,192.168.10.240,255.255.255.0,24h
dhcp-option = option: bộ định tuyến, 192.168.10.1
dhcp-option = option: dns-server, 192.168.10.1
dhcp-option = option: netmask, 255.255.255.0

dhcp-host = 00: 0C:29: A5: BD: 4A, 192.168.10.51
dhcp-host = 00: 0C:29: A5: BD: 5B, 192.168.10.52
dhcp-host = 00: 0C:29A5: BD: 6C, 192.168.10.53

Ở đây, phạm vi dhcp được sử dụng để đặt dải địa chỉ IP mà máy chủ DHCP sẽ gán cho máy chủ.

dhcp-option được sử dụng để đặt cổng ( tùy chọn: bộ định tuyến ), Địa chỉ máy chủ DNS ( tùy chọn: dns-server ) và netmask ( tùy chọn: netmask )

dhcp-host được sử dụng để đặt các địa chỉ IP cụ thể cho các máy chủ tùy thuộc vào các địa chỉ MAC được chỉ định.

Bây giờ, khởi động lại dịch vụ dnsmasq bằng lệnh sau:

$sudosystemctl khởi động lại dnsmasq

Kiểm tra Máy chủ DHCP:

Như bạn có thể thấy, máy tính host1 có địa chỉ IP 192.168.10.51/24 từ máy chủ DHCP.

Phân giải DNS cũng hoạt động từ host1 .

Theo cách tương tự, host2host3 cũng nhận được địa chỉ IP chính xác từ máy chủ DHCP và phân giải DNS hoạt động trên từng địa chỉ trong số chúng.

Đi đâu tiếp theo:

Nếu bạn muốn tìm hiểu thêm về dnsmasq, hãy xem tệp cấu hình mặc định /etc/dnsmasq.conf (bây giờ được đổi tên thành /etc/dnsmasq.conf.bk ). Nó có mô tả chi tiết về tất cả các tùy chọn cấu hình của dnsmasq.

$ít hơn /Vân vân/dnsmasq.conf.bk

Tệp cấu hình dnsmasq mặc định của Ubuntu Server 18.04 LTS.

Vì vậy, đó là cách bạn định cấu hình dnsmasq trên Ubuntu Server 18.04 LTS. Cảm ơn đã đọc bài viết này.