配置网卡
第一步:查看网卡信息
- 查看网卡信息
在配置网卡之前,首先需要查看网卡信息。以下是在不同Linux发行版上查看网卡信息的方法:
方法一:使用ifconfig
命令
输入ifconfig
命令查看网卡信息。此命令适用于大多数Linux发行版,但在某些版本中可能已被弃用。在命令行中输入以下命令:
ifconfig
方法二:使用ip a
或ip addr
命令
ip a
或ip addr
命令是ifconfig
的一个更新替代方案,它在大多数现代Linux发行版中可用。在命令行中输入以下命令之一:
ip a
或
ip addr
运行这些命令后,你将看到关于系统上所有网络接口的详细信息。请记下你想要配置的网卡名称,以便在后续步骤中使用。通常,网卡名称类似于enp0s3
、eth0
或wlp2s0
等。
第二步:配置网卡文件
- 配置网卡文件
在不同的Linux发行版中,网卡配置文件的位置可能会有所不同。下面列举了一些主要发行版的网卡配置文件位置:
- Ubuntu / Debian:
网卡配置文件位于/etc/network/interfaces
。要编辑此文件,请使用以下命令:
sudo vi /etc/network/interfaces
- CentOS / RHEL / Fedora:
CentOS和其他基于RHEL的系统(例如Fedora)的网卡配置文件通常位于/etc/sysconfig/network-scripts/
目录下,并以ifcfg-
的形式命名,例如ifcfg-enp0s3
。要编辑此文件,请使用以下命令(将替换为实际网卡名称):
sudo vi /etc/sysconfig/network-scripts/ifcfg-<interface_name>
- openSUSE / SUSE Linux Enterprise:
在openSUSE和SUSE Linux Enterprise系统中,网卡配置文件位于/etc/sysconfig/network
目录下。要编辑网卡配置文件,请使用以下命令(将替换为实际网卡名称):
sudo vi /etc/sysconfig/network/ifcfg-<interface_name>
- Arch Linux:
Arch Linux使用systemd-networkd
来管理网络。要创建一个网卡配置文件,请在/etc/systemd/network/
目录下创建一个以.network
结尾的文件,如20-wired.network
。要编辑此文件,请使用以下命令:
sudo vi /etc/systemd/network/20-wired.network
编辑对应的网卡配置文件后,你可以按照后续步骤为静态IP配置、动态获取IP配置以及修改DNS服务器地址进行相应的设置。请注意,配置文件的格式和参数可能因发行版而异,请根据所使用的Linux发行版查阅相应文档以获取详细信息。
注意:不同的linux系统,网卡配置文件是不同的,这里ubuntu的网卡配置文件是/etc/network/interfaces。
第三步:修改配置
默认的文件内容如下:
auto lo iface lo inet loopback
现在修改配置文件。修改方式有两种
静态ip配置
- 静态IP配置
这里我们将详细介绍如何在不同的Linux发行版上配置静态IP地址。
- Ubuntu
auto enp0s3 iface enp0s3 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.1
- CentOS
在CentOS上,网卡配置文件通常位于/etc/sysconfig/network-scripts/
目录下,文件名形如ifcfg-
。首先,找到对应的网卡配置文件,然后使用文本编辑器编辑,例如:
sudo vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
将以下内容添加或修改为:
BOOTPROTO=static ONBOOT=yes IPADDR=192.168.0.1 NETMASK=255.255.255.0 GATEWAY=192.168.0.1
保存并退出。
- Debian
Debian系统的网卡配置文件位置与Ubuntu相同,位于/etc/network/interfaces
。编辑此文件,将以下内容添加或修改为:
auto enp0s3 iface enp0s3 inet static address 192.168.0.1 netmask 255.255.255.0 gateway 192.168.0.1
对于其他Linux发行版,也可以参考上述方法进行相应的配置。
在完成静态IP配置后,请确保重启网络服务以使更改生效。在不同的Linux发行版上,重启网络服务的方法可能有所不同。例如,在Ubuntu上使用sudo systemctl restart networking
,而在CentOS上使用sudo systemctl restart network
。
动态ip配置
- 动态获取IP配置
在不同的Linux发行版上配置动态获取IP(DHCP)的方法:
Ubuntu/Debian
在Ubuntu/Debian上配置动态获取IP:
auto enp0s3 iface enp0s3 inet dhcp
确保将enp0s3
替换为自己的网卡名称,然后使用wq!
保存并退出。
CentOS/RHEL/Fedora
在CentOS、RHEL和Fedora中,网卡配置文件位于/etc/sysconfig/network-scripts/
目录下,以ifcfg-
的格式命名,如ifcfg-enp0s3
。
首先,使用以下命令编辑相应的网卡配置文件(请确保使用正确的网卡名称替换):
sudo vi /etc/sysconfig/network-scripts/ifcfg-<interface_name>
然后,将文件内容修改为以下内容:
TYPE=Ethernet BOOTPROTO=dhcp DEFROUTE=yes PEERDNS=yes PEERROUTES=yes NAME=<interface_name> DEVICE=<interface_name> ONBOOT=yes
请将替换为实际的网卡名称。保存并退出。
最后,重启网络服务以使更改生效:
sudo systemctl restart network
Arch Linux/Manjaro
在Arch Linux和Manjaro上,可以使用systemd-networkd
来配置动态获取IP。首先,创建一个新的网络配置文件(请确保使用正确的网卡名称替换):
sudo vi /etc/systemd/network/20-<interface_name>.network
然后,将文件内容修改为以下内容:
[Match] Name=<interface_name> [Network] DHCP=ipv4
请将替换为实际的网卡名称。保存并退出。
最后,启用并重启systemd-networkd
服务以使更改生效:
sudo systemctl enable --now systemd-networkd sudo systemctl restart systemd-networkd
通过以上方法,你可以在不同的Linux发行版上配置动态获取IP。
第四步 :修改DNS服务器地址
- 修改DNS服务器地址
根据不同的Linux发行版,修改DNS服务器地址的方法略有不同。以下是针对常见发行版的操作步骤:
- Ubuntu
通过编辑/etc/network/interfaces
文件,(通常在它的最后增加一句)添加一行指定DNS服务器地址。例如,使用阿里的DNS地址223.5.5.5
:
dns-nameservers 223.5.5.5
保存并退出。重启网络服务后,DNS设置生效。
- CentOS/RHEL
在CentOS或RHEL系统中,需要编辑网络接口的配置文件,文件位于/etc/sysconfig/network-scripts/
目录下,具体文件名可能会因网卡而异,例如ifcfg-enp0s3
。在该文件中,添加以下内容:
DNS1=223.5.5.5
保存并退出。重启网络服务后,DNS设置生效。
- Debian
Debian系统与Ubuntu类似。编辑/etc/network/interfaces
文件,在其中添加一行指定DNS服务器地址:
dns-nameservers 223.5.5.5
保存并退出。重启网络服务后,DNS设置生效。
- Fedora
对于Fedora系统,需要编辑/etc/resolv.conf
文件。在文件中添加一行以指定DNS服务器地址:
nameserver 223.5.5.5
保存并退出。重启网络服务后,DNS设置生效。
这些方法适用于不同的Linux发行版。请根据实际使用的发行版进行操作,确保正确地配置DNS服务器地址。
第五步:重启网络服务
在完成网卡配置和DNS服务器地址更改后,需要重启网络服务以使更改生效。以下是在不同的Linux发行版上重启网络服务的方法:
- Ubuntu和Debian:
使用以下命令重启网络服务:
sudo systemctl restart networking
或者
sudo /etc/init.d/networking restart
- CentOS和RHEL:
使用以下命令重启网络服务:
sudo systemctl restart network
或者
sudo service network restart
- Fedora:
使用以下命令重启网络服务:
sudo systemctl restart NetworkManager
- Arch Linux和Manjaro:
使用以下命令重启网络服务:
sudo systemctl restart NetworkManager
- openSUSE:
使用以下命令重启网络服务:
sudo systemctl restart wicked
在执行相应的命令后,网络服务将重新启动,你所做的网卡配置和DNS服务器地址更改将生效。请注意,在某些系统上,可能需要使用root权限(通过su
或sudo
)执行这些命令。
重启后DNS就生效了,这时候再看/etc/resolv.conf,最下面就多了一行:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 223.5.5.5