Ubuntu cũng nhưcác hệ điều hành linux khác coi card mạng là một devicce và lưu cấu hình trong file text, sau đó tải lên mỗi khi khởi động máy. Bài viết này giới thiệu một số công cụ để kiểm tra và cấu hình card mạng cho ubuntu.
Mỗi máy tính cần có một card mạng Ethernet có dây hoặc không dây, được liệt kê trong thư mục /dev với tên gọi bắt đầu bằng 3 chữ cái eth. Ví dụ
– eth0 cho card mạng thứ nhất
– eth1 cho card mạng thứ 2, ....
Để xem máy có bao nhiêu card mạng, gõ lệnh sau
# ifconfig -a | grep eth
Để kiểm tra xem các card mạng đã được cấu hình hay chưa gõ các lệnh sau
# ifconfig
Lệnh này cung cấp thông tin về địa chỉ MAC, địa chỉ IP, gateway... của tất cả các card mạng. Nếu muốn xem thông tin từng card mạng gõ lệnh này cộng với tên card mạng được list ở bước trên ví dụ # ifconfìg eth0
Để xem các định tuyến đi qua các mạng như thế nào gõ lệnh sau:
# route -n
Để gán ip, cấu hình cho card mạng và kiểm tra chúng ta dùng lệnh sau. Lệnh này sẽ có tác dụng ngay tức thì tuy nhiên cấu hình này không ghi vào file config nên sẽ mất khi khởi động lại máy tính
# ifconfig ethX IP-address netmask subnet-mask
Ví dụ
# ifconfig eth0 192.168.1.2 netmask 255.255.255.0
Muốn card mạng được khai báo IP cố định, chúng ta đặt các lệnh cấu hình card mạng trong file cấu hình có đường dẫn là /etc/network/interface. Có thể dùng lệnh vi hoặc gedit để tạo file cấu hình card mạng này và chỉnh sửa nó
#sudo gedit /etc/network/interfaces
Nội dung file như sau:
- auto lo
- iface lo inet loopback
- auto eth0
- iface eth0 inet static
- address 192.168.1.2
- netmask 255.255.255.1.0
- gateway 192.168.1.1
Sau khi khai báo cấu hình trong file interfaces nói trên, cần khởi động lại máy hoặc dùng lệnh sau để khởi động lại dịch vụ mạng để lấy cấu hình mới. Lưu ý 2 dòng đầu tiên là dành cho card loopback, không nên thay đổi.
# sudo reboot
# sudo /etc/init.d/networking restart
Nếu muốn cấu hình card mạng nhận IP từ DHCP server chúng ta khai báo các dòng lệnh sau trong file /etc/network/interfaces thay cho 5 dòng lệnh cấu hình card mạng ở bước trên
- auto eth0
- iface eth0 inet dhcp
Sau đó reboot hoặc restart dịch vụ mạng như ở bước trên
Sau khi có địa chỉ mạng, nếu muốn hệ thống có thể truy cập internet, vào các website và chạy các lệnh get app, chúng ta cần chỉ ra một DNS server để hệ thống biết cách phân giải tên miền. Khai báo DNS trong file /etc/resolv với lệnh gedit như sau
#sudo gedit /etc/resolv
Và sửa nội dung file này như sau:
nameserver 8.8.8.8
nameserver 8.8.8.4
Trong đó 8.8.8.8 là DNS chính của google, còn 8.8.8.4 là DNS phụ của google. Bạn có thể thay thế hai địa chỉ DNS này bằng địa chỉ DNS riêng của bạn hoặc của nhà cung cấp dịch vụ nào gần nhất.
Để đặt một card mạng nào đó làm default gateway chúng ta gõ dòng lệnh sau
# route add default gw ip-getway hoặc
# route add -net 0.0.0.0 mask 0.0.0.0 dev {interface-name}
Ví dụ
# route add default gw 192.168.1.1
# route add -net 0.0.0.0 mask 0.0.0.0 dev eth0
Để add một routing tĩnh đến một mạng nào đó ta dùng lệnh
# route add -net x.x.x.x mask y.y.y.y dev {interface-name}
Trong đó x.x.x.x là địa chỉ mạng, còn y.y.y.y là subnet-mask. Ví dụ:
# route add -net 192.168.5.0 mask 255.255.255.0 dev eth0
Để gỡ bỏ một route tĩnh hay một default gateway chúng ta thay lệnh route add ở trên bằng lệnh route delete như ví dụ sau
# route delete -net 192.168.5.0 mask 255.255.255.0 dev eth0
# route delete default gw 192.168.1.1
Để tạm ngừng (disable) một card mạng chúng ta dùng lệnh
# sudo ifconfig eth0 down
Để bật lại một card mạng ta dùng lệnh
# sudo ifconfig eth0 up
Lưu ý. Tất cả các lệnh trên đều phải dùng với sudo ở đằng trước để đảm bảo có quyền cao nhất
Ngoài công cụ cấu hình mạng bằng đồ họa cho Ubuntu. Ubuntu hướng dẫn cho người quản trị mạng cấu hình thông tin về mạng thông qua giao diện dòng lệnh.
Để mở cửa số terminal trong Ubuntu nhấn tổ hợp: Ctrl + Alt + T
Giao diện Ethernet Interfaces
Phần này xác định tên chính của card mạng có dạng: ethX, trong đó X là thứ tự card mạng. Thứ tự được đánh từ 1 đến n tùy theo số lượng card mạng đang dùng trên máy của bạn
Xác định card mạng hiện có
Một cách nhanh nhất để xác định được card mạng đang tồn tại trên máy tính bằng lệnh: ifconfig
ifconfig -a | grep eth
eth0 Link encap:Ethernet HWaddr 00:15:c5:4a:16:5a
Ngoài ra còn có chương trình khác giúp bạn có đầy đủ thông tin về card mạng đang tồn tại trên máy bằng lệnh: lshw . Trong ví dụ dưới đây, lshw hiển thị “Ethernet interface” với tên là eth0 với các thông tin về Bus, chi tiết về driver và khả năng tương thích.
sudo lshw -class network
*-network
description: Ethernet interface
product: BCM4401-B0 100Base-TX
vendor: Broadcom Corporation
physical id: 0
bus info: pci@0000:03:00.0
logical name: eth0
version: 02
serial: 00:15:c5:4a:16:5a
size: 10MB/s
capacity: 100MB/s
width: 32 bits
clock: 33MHz
capabilities: (snipped for brevity)
configuration: (snipped for brevity)
resources: irq:17 memory:ef9fe000-ef9fffff
Thay đổi tên cho card mạng.
Tên của card mạng được cấu hình trong file/etc/udev/rules.d/70-persistent-net.rules.
Nếu bạn muốn tìm tên, hoặc tìm địa chỉ MAC và sửa lại tên theo giá trị NAME=ethX sau đó khởi động lại máy.
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5a", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:15:c5:4a:16:5b", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
Cấu hình card mạng trong Ubuntu
ethtool là một chương trình hiển thị các thông tin và thay đổi các thông số car mạng ví dụ: auto-negotiation, port speed, duplex mode, vàWake-on-LAN. Chương trình này không được cài đặt sẵn, bạn phải cài đặt từ lệnh sau.
sudo apt-get install ethtool
Lệnh dưới đây cho phép xem các thông tin về tính năng cũng như các cài đặt sẵn có của card mạng.
sudo ethtool eth0
Settings for eth0:
Supported ports: [ TP ]
Supported link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Supports auto-negotiation: Yes
Advertised link modes: 10baseT/Half 10baseT/Full
100baseT/Half 100baseT/Full
1000baseT/Half 1000baseT/Full
Advertised auto-negotiation: Yes
Speed: 1000Mb/s
Duplex: Full
Port: Twisted Pair
PHYAD: 1
Transceiver: internal
Auto-negotiation: on
Supports Wake-on: g
Wake-on: d
Current message level: 0x000000ff (255)
Link detected: yes
Lưu ý nhưng lệnh của ethtool là những lệnh tạm thời, nó sẽ bị mất khi khởi động lại máy. Nếu muốn cài đặt thông tin chính xác bạn phải sửa file/etc/network/interfaces
.
The following is an example of how the interface identified as eth0 could be permanently configured with a port speed of 1000Mb/s running in full duplex mode.
auto eth0
iface eth0 inet static
pre-up /usr/sbin/ethtool -s eth0 speed 1000 duplex full
0 Comments