“Linux系统下网络配置方法”的版本间的差异

来自ARM Wiki
跳转至: 导航搜索
第1行: 第1行:
===设置以太网接口===
 
 
对于busybox、debian、ubuntu系统,大多数[https://wiki.debian.org/NetworkConfiguration 网络设置]可以通过/etc/network/interfaces配置文件完成。系统启动时通过/etc/init.d/networking服务中的ifup程序来解析/etc/network/interfaces配置文件。若接口设置为dhcp方式则会调用系统下的DHCP客户端程序udhcpc或dhclient来动态获取IP。<br />
 
对于busybox、debian、ubuntu系统,大多数[https://wiki.debian.org/NetworkConfiguration 网络设置]可以通过/etc/network/interfaces配置文件完成。系统启动时通过/etc/init.d/networking服务中的ifup程序来解析/etc/network/interfaces配置文件。若接口设置为dhcp方式则会调用系统下的DHCP客户端程序udhcpc或dhclient来动态获取IP。<br />
 
====使用DHCP自动配置接口====
 
====使用DHCP自动配置接口====
参考设置如下:<br />
+
编辑/etc/network/interfaces,参考设置如下:<br />
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
auto eth0
 
auto eth0
第10行: 第9行:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
/etc/init.d/networking restart
 
/etc/init.d/networking restart
 +
</syntaxhighlight>
 +
网络接口可以通过命令查看
 +
<syntaxhighlight lang="bash">
 +
$ ls /sys/class/net/
 +
eth0  eth1  lo
 +
 
</syntaxhighlight>
 
</syntaxhighlight>
 
====手动配置接口====
 
====手动配置接口====
参考设置如下:<br />
+
编辑/etc/network/interfaces,参考设置如下:<br />
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
auto eth0
 
auto eth0
第26行: 第31行:
 
</syntaxhighlight>
 
</syntaxhighlight>
 
====设置DNS====
 
====设置DNS====
/etc/resolv.conf中的DNS列表为其他程序、库最终使用的DNS列表,该文件会被resolvconf、network-manager及DHCP客户端修改覆盖,建议直接编辑/etc/network/interfaces,并确认系统下安装了resolvconf程序。
+
/etc/resolv.conf中的DNS列表为其他程序、库最终使用的DNS列表,该文件会被resolvconf、network-manager及DHCP客户端修改覆盖,建议直接编辑/etc/network/interfaces,并确认系统下安装了resolvconf程序,通过以下命令确认。
 +
<syntaxhighlight lang="bash">
 +
$ which resolvconf
 +
/sbin/resolvconf
 +
</syntaxhighlight>
 +
编辑/etc/network/interfaces,参考设置如下:<br />
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
dns-nameservers 1.2.4.8 114.114.114.114
 
dns-nameservers 1.2.4.8 114.114.114.114
 +
</syntaxhighlight>
 +
重启networking服务生效<br />
 +
<syntaxhighlight lang="bash">
 +
/etc/init.d/networking restart
 
</syntaxhighlight>
 
</syntaxhighlight>
 
====NetworkManager====
 
====NetworkManager====
第44行: 第58行:
 
apt-get remove network-manager --purge
 
apt-get remove network-manager --purge
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
====海思busybox====
===设置WIFI===
+
海思主板的linux系统使用的busybox文件系统比较精简,没有/etc/network/interfaces配置文件,系统默认在/etc/init.d/S*_norco中用ifconfig命令配置了静态IP。<br />
[http://www.example.com 链接标题]
+
配置动态IP使用udhcpc命令,参考如下:
 +
<syntaxhighlight lang="bash">
 +
udhcpc -i eth0
 +
</syntaxhighlight>
 +
配置为静态IP及网关使用[https://wiki.linuxfoundation.org/networking/iproute2 ip]命令,参考如下:
 +
<syntaxhighlight lang="bash">
 +
ip addr add 192.168.0.10/24 brd + dev eth0
 +
ip route add default via 192.168.0.1 dev eth0
 +
</syntaxhighlight>
 +
设置DNS,若设置动态IP,则udhcpc会动态创建/etc/resolv.conf,若设置静态IP,可直接编辑/etc/resolv.conf
 +
<syntaxhighlight lang="bash">
 +
nameserver 1.2.4.8
 +
nameserver 114.114.114.114
 +
</syntaxhighlight>

2020年4月8日 (三) 19:55的版本

对于busybox、debian、ubuntu系统,大多数网络设置可以通过/etc/network/interfaces配置文件完成。系统启动时通过/etc/init.d/networking服务中的ifup程序来解析/etc/network/interfaces配置文件。若接口设置为dhcp方式则会调用系统下的DHCP客户端程序udhcpc或dhclient来动态获取IP。

使用DHCP自动配置接口

编辑/etc/network/interfaces,参考设置如下:

auto eth0
iface eth0 inet dhcp

重启networking服务生效

/etc/init.d/networking restart

网络接口可以通过命令查看

$ ls /sys/class/net/
eth0  eth1  lo

手动配置接口

编辑/etc/network/interfaces,参考设置如下:

auto eth0
iface eth0 inet static
    address 192.168.0.10
    gateway 192.168.0.1
    netmask 255.255.255.0
    broadcast 192.168.0.255

重启networking服务生效

/etc/init.d/networking restart

设置DNS

/etc/resolv.conf中的DNS列表为其他程序、库最终使用的DNS列表,该文件会被resolvconf、network-manager及DHCP客户端修改覆盖,建议直接编辑/etc/network/interfaces,并确认系统下安装了resolvconf程序,通过以下命令确认。

$ which resolvconf
/sbin/resolvconf

编辑/etc/network/interfaces,参考设置如下:

dns-nameservers 1.2.4.8 114.114.114.114

重启networking服务生效

/etc/init.d/networking restart

NetworkManager

有桌面的debian、ubuntu系统默认安装了network-manager,会进一步管理网络,在系统启动时通过/etc/init.d/network-manager启用。有桌面的系统,一般直接从桌面设置网络即可。若从/etc/network/interfaces中进行配置,对于interfaces中声明过的网络接口NetworkManager默认不再管理,重启NetworkManager服务,会看到桌面上NetworkManager菜单中相应的网络接口显示“device not managed”

/etc/init.d/network-manager restart

若仍需要管理该网络接口,则设置/etc/NetworkManager/NetworkManager.conf中managed为true

[ifupdown]
managed=true

也可以通过卸载network-manager来自己管理网络

apt-get remove network-manager --purge

海思busybox

海思主板的linux系统使用的busybox文件系统比较精简,没有/etc/network/interfaces配置文件,系统默认在/etc/init.d/S*_norco中用ifconfig命令配置了静态IP。
配置动态IP使用udhcpc命令,参考如下:

udhcpc -i eth0

配置为静态IP及网关使用ip命令,参考如下:

ip addr add 192.168.0.10/24 brd + dev eth0
ip route add default via 192.168.0.1 dev eth0

设置DNS,若设置动态IP,则udhcpc会动态创建/etc/resolv.conf,若设置静态IP,可直接编辑/etc/resolv.conf

nameserver 1.2.4.8
nameserver 114.114.114.114