Cấu hình IP tĩnh cho Linux server

Cloud server của VCCloud sẽ có 2 card mạng để chế độ DHCP (chế độ IP động), một mạng nằm trên dải private (các server bên trong có thể nói chuyện với nhau an toàn hơn), một mạng nằm trên dải public (server có thể ra được internet và người dùng có thể truy cập vào server). Card mạng Private sẽ là card thứ nhất (mặc định là eth0), card còn lại sẽ là public (mặc định là eth1).
Thông thường bạn không cần thao tác gì tới config mặc định này, tuy nhiên với một số mục đích đặc thù, chúng ta sẽ cần cấu hình IP tĩnh cho server. Tutorial này sẽ hướng dẫn chi tiết cách đặt IP tĩnh cho Ubuntu & CentOS server.

Khi đặt địa chỉ IP tĩnh cho card mạng private bạn chỉ cần đặt địa chỉ IP và subnet mask của mạng đó, đối với mạng public bạn sẽ phải đặt địa chỉ gateway cho card mạng đó.

1. Cấu hình IP tĩnh cho Ubuntu Server

File cấu hình IP cho các card mạng của Ubuntu Server nằm tại /etc/network/interfaces.
Nội dung ban đầu sẽ như sau

1
2
3
4
5
6
7
8
9
10
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
 
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet dhcp

Để kiểm tra địa chỉ IP được cấp cho Cloud Server có 2 cách:

  • Trên Dashboard
  • Sử dụng câu lệnh trên linux (ip a hoặc ifconfig)
  • Ví dụ ta muốn cấu hình địa chỉ IP tĩnh cho cả 2 card mạng, ta sửa file cấu hình như sau

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    
    # This file describes the network interfaces available on your system
    # and how to activate them. For more information, see interfaces(5).
    # The loopback network interface
    auto lo
    iface lo inet loopback
     
    auto eth0
    iface eth0 inet static
        address 10.5.55.136
        netmask 255.255.255.0
     
    auto eth1
    iface eth1 inet static
        address 103.56.158.174
        netmask 255.255.255.0
        gateway 103.56.158.1
        dns-nameservers 8.8.8.8

    Giải thích file cấu hình:

    Phần này là cấu hình cho card loopback. Mặc định với tất cả các server:

    1
    2
    3
    
    #The loopback network interface
    auto lo
    iface lo inet loopback

    Phần cấu hình IP tĩnh cho interface eth0:

    1
    2
    3
    4
    
    auto eth0
    iface eth0 inet static
        address 10.5.55.136
        netmask 255.255.255.0

    Dòng 1: auto eth0 sẽ cấu hình cho interface eth0 khởi động cùng hệ thống
    Dòng 2: iface eth0 inet static tạo 1 đoạn cấu hình tĩnh với tên là eth0 trên card Ethernet của chúng ta. Các dòng tiếp theo là phần cấu hình IP cho interface:
    address: địa chỉ chúng ta muốn đặt cho server
    netmask: subnet mask của dải mạng chúng ta sử dụng

    Phần cấu hình IP tĩnh cho interface eth1:

    1
    2
    3
    4
    5
    6
    
    auto eth1
    iface eth1 inet static
        address 103.56.158.174
        netmask 255.255.255.0
        gateway 103.56.158.1
        dns-nameservers 8.8.8.8

    Các khai báo giống eth0, ngoài ra:
    gateway: default gateway cho server
    dns-nameserver: DNS server sẽ dùng cho server để phân giải internet. Ở đây chọn DNS server của google.

    Lưu ý: Các địa chỉ IP ở trên là địa chỉ IP Cloud Server ví dụ, Cloud Server của bạn sẽ có địa chỉ IP khác

    Sau khi sử file cài đặt ta lưu lại thiết lập và sử dụng câu lệnh sau để khởi động lại card mạng ta vừa thiết lập:

    sudo ifdown <interface> && sudo ifup <interface>

    Với ví dụ trên ta sẽ chạy lệnh

    sudo ifdown eth1 && sudo ifup eth1
    sudo ifdown eth0 && sudo ifup eth0

    hoặc
    sudo ifdown -a && sudo ifup -a

    Và kiểm tra lại bằng lệnh ip a

    2. Cấu hình IP tĩnh cho CentOS 6 và 7

    Đối với các hệ điều hành CentOS thì các file cấu hình các card mạng được tách ra mỗi một card mạng một file. Nằm tại foler /etc/sysconfig/network-scripts/

    Tên của file cấu hình sẽ có cú pháp ifcfg- với interface là tên của card mạng, Ví dụ file cấu hình cho card eth0 là ifcfg-eth0

    Ví dụ ta có file cấu hình cho card eth0 ban đầu như sau

    1
    2
    3
    4
    5
    
    TYPE="Ethernet"
    DEVICE="eth0"
    ONBOOT="yes"
    BOOTPROTO="dhcp"
    NM_CONTROLLED="no"

    Để đặt địa chỉ IP 10.20.0.13 subnetmask 255.255.255.0 cho card mạng eth0 ta sửa file ifcfg-eth0 như sau

    1
    2
    3
    4
    5
    6
    7
    
    TYPE="Ethernet"     
    DEVICE="eth0"              # Tên của interface
    ONBOOT="yes"               # Khởi động interface cùng server
    BOOTPROTO="static"         # Phương thức cài đặt cho interface này là cấu hình IP tĩnh
    NM_CONTROLLED="no"
    IPADDR="10.20.0.13"        # IP tĩnh chúng ta muốn đặt cho server
    NETMASK="255.255.255.0 "   # Subnetmask của dải mạng chúng sử dụng

    Sau đó ta lưu lại và khởi động lại card mạng eth0

    sudo ifdown eth0 && sudo ifup eth0

    hoặc khởi động lại network service

    sudo service network restart

    Lưu ý: Đối với CentOS 7 ta sử dụng lệnh systemctl restart network.service

    Nếu ta cấu hình trên card mạng ra internet (eth1) ta cần phải đặt gateway cho card mạng bằng cách thêm dòng sau vào trong file cấu hình

    1
    
    GATEWAY=<IP_gateway>

    Với IP_gateway là địa chỉ IP của gateway

    Nếu ta muốn đặt DNS Server tĩnh trên card mạng thì thêm dòng sau:

    1
    
    DNS1=<IP_DNS_Server>

    Hoặc DNS Server thứ 2

    1
    
    DNS2=<IP_DNS_Server>

    Với IP_DNS_Server là địa chỉ IP của DNS Server.

    Ví dụ

    1
    
    DNS1=8.8.8.8

    Hoặc

    1
    2
    
    DNS1=8.8.8.8
    DNS2=8.8.4.4

    Rate This Article

    (2 out of 3 people found this article helpful)

    Leave A Comment?

    You must be logged in to post a comment.