Gói ifupdown là một phần mềm cấu hình mạng cũ hơn vẫn được Debian và các bản phân phối Ubuntu cũ hơn sử dụng (chẳng hạn như 16.04 LTS trở về trước).

Các bản phát hành Ubuntu mới hơn sử dụng Netplan kết hợp với systemd-networkd (hoặc NetworkManager). Các bản phát hành Debian mới hơn cũng bao gồm systemd-networkd, mặc dù ifupdown vẫn là mặc định.

Hướng dẫn này đóng vai trò bổ sung cho cấu hình mạng Thủ công chính trong hướng dẫn Phiên bản điện toán. Vui lòng xem lại hướng dẫn đó trước khi thực hiện bất kỳ thay đổi cấu hình nào đối với Phiên bản điện toán của bạn.

Tệp cấu hình

Cài đặt cấu hình mạng cho ifupdown được quản lý bên trong tệp giao diện hoặc chuỗi tệp. Cấu hình chính thường được lưu trữ trong /etc/network/interfaces và các tệp bổ sung thường được thêm vào trong /etc/network/interfaces.d/*

Tệp cấu hình mặc định: /etc/network/interfaces

Cấu hình khởi động

Đây là ví dụ về tệp cấu hình điển hình cho ifupdown. Nó xác định tĩnh địa chỉ IPv4 và cho phép SLAAC định cấu hình địa chỉ IPv6.

Định cấu hình địa chỉ IP theo cách thủ công

  • Đăng nhập vào Cloud Manager và xem lại địa chỉ IP của Phiên bản điện toán của bạn. Xem Quản lý địa chỉ IP. Hãy ghi lại những thông tin sau đây hoặc giữ cho trang này có thể truy cập được để bạn có thể tham khảo sau này.
    • Địa chỉ IPv4 công khai và cổng IPv4 liên quan
    • Địa chỉ IPv4 riêng tư (nếu đã thêm)
    • Địa chỉ SLAAC IPv6 và cổng IPv6 liên quan
    • Phạm vi định tuyến IPv6 /64 hoặc /56 (nếu đã thêm)
    • Bộ giải quyết DNS (nếu bạn muốn sử dụng bộ giải quyết Linode)
  • Tắt Network Helper trên Compute Instance để nó không ghi đè bất kỳ thay đổi nào của bạn khi khởi động lại hệ thống lần sau. Để biết hướng dẫn, hãy xem hướng dẫn Network Helper. Hướng dẫn này bao gồm cách tắt Network Helper trên toàn cầu (cho tất cả Compute Instance trên tài khoản của bạn) hoặc chỉ cho một instance duy nhất.
  • Đăng nhập vào Compute Instance bằng SSH hoặc Lish. Bạn có thể cân nhắc sử dụng Lish để tránh bị khóa trong trường hợp xảy ra lỗi cấu hình.
  • Thực hiện bất kỳ bước cấu hình cần thiết nào như được nêu trong quy trình làm việc bên dưới. Bạn có thể chỉnh sửa tệp cấu hình mạng của mình bằng trình soạn thảo văn bản như nano hoặc vim.
sudo nano /etc/network/interfaces
  • Sau khi chỉnh sửa tệp cấu hình cho phù hợp với nhu cầu của mình, bạn cần áp dụng các thay đổi hoặc khởi động lại Phiên bản điện toán. Để áp dụng các thay đổi của bạn với ifupdown, hãy chạy các lệnh sau:
sudo ifdown eth0 && sudo ip addr flush eth0 && sudo ifup eth0

Thay đổi địa chỉ IPv4 chính

Để thay đổi địa chỉ IPv4 chính được định cấu hình trên hệ thống, hãy đặt tham số địa chỉ và cổng trong iface eth0 inet static để khớp với địa chỉ IP mới và địa chỉ IP cổng tương ứng của nó.

Thay đổi địa chỉ IPv4 chính

Để thay đổi địa chỉ IPv4 chính được định cấu hình trên hệ thống, hãy đặt tham số địa chỉ và cổng trong iface eth0 inet static để khớp với địa chỉ IP mới và địa chỉ IP cổng tương ứng của nó.

Định cấu hình địa chỉ IPv4 chính thông qua DHCP

DHCP có thể được sử dụng để tự động định cấu hình địa chỉ IPv4 chính của bạn. Địa chỉ IPv4 chính được xác định là địa chỉ IPv4 được gán cho hệ thống của bạn, nằm ở vị trí đầu tiên khi được sắp xếp theo số. Để bật DHCP, hãy sửa đổi hoặc thêm iface cho giao diện của bạn bằng dhcp thay vì tĩnh

Khi sử dụng DHCP, địa chỉ IPv4 được định cấu hình trên hệ thống của bạn có thể thay đổi nếu bạn thêm hoặc xóa địa chỉ IPv4 trên Phiên bản điện toán của mình. Nếu điều này xảy ra, mọi công cụ hoặc hệ thống sử dụng địa chỉ IPv4 ban đầu sẽ không thể kết nối được nữa.

Để tắt DHCP, hãy chuyển dhcp về trạng thái tĩnh và thêm thủ công các đường cổng và địa chỉ có liên quan.

Định cấu hình địa chỉ IPv4 bổ sung

Địa chỉ IP bổ sung có thể được cấu hình bằng cách thêm hoặc sửa đổi nhóm iface cho giao diện mong muốn. Nhiều dòng địa chỉ có thể được cung cấp để định cấu hình nhiều địa chỉ IP.

Trong ví dụ trên, hãy thực hiện các thay thế sau:

  • [ip-address]: Địa chỉ IPv4 mà bạn muốn cấu hình tĩnh.
  • [prefix]: Tiền tố dựa trên loại địa chỉ IP mà bạn đang thêm. Tiền tố phải là 24 đối với địa chỉ IPv4 công khai và 17 đối với địa chỉ IPv4 riêng tư.

Định cấu hình địa chỉ IPv6 chính thông qua SLAAC

SLAAC được sử dụng để tự động định cấu hình địa chỉ IPv6 chính của bạn. Trong ifupdown, bạn có thể định cấu hình địa chỉ IPv6 SLAAC bằng cách thêm hoặc sửa đổi iface cho giao diện của bạn và giao thức inet6, đảm bảo đặt nó thành tự động thay vì tĩnh.

Nếu bạn muốn tắt địa chỉ IPv6 SLAAC và thay vào đó định cấu hình tĩnh địa chỉ IPv6 chính của mình (không được khuyến nghị), bạn có thể sửa đổi nhóm iface eth0 inet6 bằng cách đặt nó thành tĩnh và thêm địa chỉ IPv6 chính của bạn trong tham số địa chỉ (sử dụng tiền tố của / 128).

Định cấu hình địa chỉ IPv6 bổ sung

Nếu bạn được gán một phạm vi IPv6 cho Phiên bản điện toán của mình, thì bạn có thể đặt cấu hình các địa chỉ trong phạm vi này trong nhóm iface eth0 inet6, đảm bảo nhóm này được đặt thành tĩnh thay vì tự động. Nhiều dòng địa chỉ có thể được cung cấp để định cấu hình nhiều địa chỉ IP.

Trong ví dụ trên, hãy thực hiện các thay thế sau:

  • [ip-address]: Địa chỉ IPv6 mà bạn muốn cấu hình tĩnh. Bạn có thể chọn bất kỳ địa chỉ nào trong phạm vi khả dụng của mình. Ví dụ: trong phạm vi 2001:db8:e001:1b8c::/64, địa chỉ 2001:db8:e001:1b8c::1 có thể được sử dụng.
  • [prefix]: Tiền tố phải là 64 hoặc 56 (tùy thuộc vào kích thước phạm vi IPv6 của bạn).
    Tham số autoconf (khi được đặt thành 1) cho phép địa chỉ IPv6 chính được tự động cấu hình thông qua SLAAC, đây là hành vi được ưu tiên trong hầu hết các trường hợp.

Thay đổi trình phân giải DNS

Trình phân giải DNS là các thực thể phân giải tên miền thành địa chỉ IPv4 tương ứng của chúng. Theo mặc định, Phiên bản điện toán sẽ sử dụng trình phân giải DNS cho trung tâm dữ liệu nơi nó cư trú. Bạn có thể thay đổi những điều này thông qua tệp /etc/resolv.conf, đặt tham số máy chủ tên cho trình phân giải DNS ưa thích của bạn.

Trong ví dụ trên, hãy thay thế địa chỉ IP được cung cấp bằng địa chỉ IP của trình phân giải DNS mà bạn muốn sử dụng.

Nguồn: https://techdocs.akamai.com/cloud-computing/docs/network-configuration-using-ifupdown