Trong quá trình cài đặt Server, đặt địa chỉ IP tĩnh là một điều không thể thiếu để vận hành tốt server.

Bạn sẽ không muốn mỗi khi server khởi động lên, địa chỉ IP nó nhận được lại một khác. Điều này ảnh hưởng rất nhiều đến các cấu hình trong server, vì có thể lúc trước bạn muốn kết nối đến Database Server bằng địa chỉ IP này, khi restart thì nó lại ở địa chỉ IP khác. Và mỗi lần như thế bạn lại phải tùy chỉnh lại các cấu hình phần mềm. Chính vì thế đặt địa chỉ IP tĩnh chính là một trong những bước đầu tiên khi setup một server.

Bài viết này sẽ hướng dẫn các bạn đặt địa chỉ IP tĩnh và động trong các hệ diều hành Linux.

Ubuntu, Debian và các phiên bản mở rộng (Backtrack, Kali, Linux Mint, …)

Tệp tin cấu hình network của họ Ubuntu/Debian đặt tại đường dẫn /etc/network/interfaces

 root@localhost:~# vi /etc/network/interfaces
 # 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
 # The primary network interface
 auto eth0
 iface eth0 inet dhcp // nếu bạn muốn đặt IP động, chỉ cần lấy dòng này
 iface eth0 inet static // nếu bạn muốn đặt IP tĩnh, lấy dòng này và khai báo tất cả phía dưới
 address 192.168.1.1  // địa chỉ IP
 network 192.168.1.0  // khai báo network
 netmask 255.255.255.0  // subnet
 broadcast 192.168.1.255  // broadcast
 gateway 192.168.1.254  // cuối cùng là gateway
 dns-nameservers 8.8.8.8 8.8.4.4  // dns servers

Khởi động lại card eth0

root@localhost:~# ifdown eth0 && ifup eth0
hoặc
root@localhost:~# /etc/init.d/networking restart

Nếu bạn muốn thêm một card mạng, chỉ cần khai báo thêm:

auto eth1
iface eth1 inet dhcp/static  // tùy chỉnh
...........

Disable IPv6 nếu không thực sự cần thiết

root@localhost:~# sysctl net.ipv6.conf.all.disable_ipv6 = 1 
hoặc 
root@localhost:~# echo "net.ipv6.conf.all.disable_ipv6 = 1" >> /etc/sysctl.conf
root@localhost:~# sysctl -p

CentOS/Redhat/Fedora:

Tệp tin cấu hình network của họ CentOS/Redhat/Fedora được đặt tại đường dẫn /etc/sysconfig/network-scripts/<ifcfg-eth0,ifcfg-eth1,ifcfg-eth2,….> tùy theo số lượng card mạng bạn có, mỗi card mạng sẽ nằm trên một file riêng.

[root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0  // tên sẽ gán cho thiết bị
TYPE=Ethernet
ONBOOT=yes  // thiết bị sẽ được load khi hệ điều hành khởi động, nếu giá trị này là "no", hệ điều hành sẽ không sử dụng card mạng này.
NM_CONTROLLED=yes
HWADDR=AA:BB:CC:DD:EE:FF   // địa chỉ MAC của card mạng đang được cấu hình
BOOTPROTO=dhcp  // nếu bạn muốn dùng địa chỉ IP dạng động, chỉ viết đến đây
BOOTPROTO=static  // nếu bạn gán địa chỉ IP tĩnh, sử dụng "static" thay cho "dhcp" và khai báo mọi thứ bên dưới
IPADDR=192.168.1.1
NETMASK=255.255.255.0
GATEWAY=192.168.1.254  // có thể có hoặc không
DNS1=8.8.8.8  // có thể có hoặc không
DNS2=8.8.4.4  // có thể có hoặc không
<các dns server khác>
[root@localhost ~]# service network restart
[root@localhost ~]# ifconfig để kiểm tra.

Đến đây thì các bước cấu hình IP đã hoàn tất.

Đào Xuân Hưng – AdminVietnam.org