SDB:Knetworkmanager 静态 IP 自动 eth0

跳转到:导航搜索

在 openSUSE 上测试

推荐文章

Icon-manual.png

相关文章

Icon-help.png


Google 翻译已开启。:-)

本 HOWTO 将演示如何使用 nm-connection-editor 设置静态 IP - KNetworkManager - 系统连接 Auto eth0

本 HOWTO 将演示如何使用 KNetworkManager 设置静态 IP - KNetworkManager - 用户连接 eth0-static

将展示两种方法(1-系统连接和 2-用户连接)来创建一个具有静态 IP 且自动工作的连接。


系统和软件包

在本教程中将使用

  • openSUSE 11.4-x86_64
  • KDE: 4.6.00 (4.6.0) "release 6"
  • KNetworkManager: v0.9
  • NetworkManager: 0.8.2-15.20.1
  • NetworkManager-gnome: 0.8.2-8.1 --> nm-connection-editor (KDE 安装中默认未安装此软件包)

如何获取网络配置信息 (openSUSE 11.4):

列出所有网络设备的配置

$ /sbin/ifconfig


列出网络卡 eth0 的信息

$ /sbin/ifconfig eth0
eth0   Link encap:Ethernet  Endereço de HW 00:11:22:33:44:55
       inet end.: 172.16.131.129  Bcast:192.168.2.255  Masc:255.255.255.0
       endereço inet6: fe80::224:beff:fe95:10ac/64 Escopo:Link
       UP BROADCASTRUNNING MULTICAST  MTU:1500  Métrica:1
       RX packets:470051 errors:0 dropped:0 overruns:0 frame:0
       TX packets:228989 errors:0 dropped:0 overruns:0 carrier:0
       collisions:0 txqueuelen:1000 
       RX bytes:524119656 (499.8 Mb)  TX bytes:66645851 (63.5 Mb)
       IRQ:18 
  • 网络 IP 地址 (inet end.): 172.16.131.129
  • 子网掩码 (Masc): 255.255.255.0


列出 DNS 信息

$ cat /etc/resolv.conf
### /etc/resolv.conf file autogenerated by netconfig!
#
# Before you change this file manually, consider to define the
# static DNS configuration using the following variables in the
# /etc/sysconfig/network/config file:
#     NETCONFIG_DNS_STATIC_SEARCHLIST
#     NETCONFIG_DNS_STATIC_SERVERS
#     NETCONFIG_DNS_FORWARDER
# or disable DNS configuration updates via netconfig by setting:
#     NETCONFIG_DNS_POLICY=''
#
# See also the netconfig(8) manual page and other documentation.
#
# Note: Manual change of this file disables netconfig too, but
# may get lost when this file contains comments or empty lines
# only, the netconfig settings are same with settings in this
# file and in case of a "netconfig update -f" call.
#
### Please remove (at least) this line when you modify the file!
search dominiolocal
nameserver 208.67.222.222
nameserver 208.67.220.220
  • 主 DNS (nameserver): 208.67.222.222
  • 辅助 DNS (nameserver): 208.67.220.220

您可以看到您的 ISP 的 DNS,或者您可以看到您的路由器的 IP 地址。这取决于您的网络配置方式以及您的路由器配置方式。

从您的 ISP 获取主 DNS 和辅助 DNS(请参阅您的提供商的支持),或者您可以使用 OpenDNS 的 DNS(208.67.222.222 和 208.67.220.220)。


列出默认路由信息(通常是路由器的 IP - 网关)

$ /sbin/route -n | grep UG | awk '{print $2}'
192.168.2.1


  • NetworkManager 与 "netconfig" 协同工作。
  • 手动编辑文件/etc/resolv.conf禁用 "netconfig"(手动更改此文件也会禁用 netconfig)。
  • 如果您在文件中输入了错误的信息/etc/resolv.conf那么您可能无法通过输入网站名称(例如 www.google.com.br)来浏览互联网,并且只能通过 IP 地址访问该网站。
  • 在本教程中,将不会手动编辑该文件/etc/resolv.conf.


  • 文件系统连接 (方法 1) "Auto eth0" 由 "nm-connection-editor" 编辑

/etc/NetworkManager/system-connections/Auto\ eth0


  • 文件用户连接 (方法 2) 由 Knetworkmanager 编辑在

/home/username/.kde4/share/apps/networkmanagement/connections/


  • 由 "netconfig" 使用的文件

/etc/resolv.conf


  • 名称“Auto\ eth0” 包含反斜杠,因为 "Auto" 和 "eth0" 之间有空格。提示:按 Tab 键可以让系统自动输入终端(Konsole)中的完整名称,以避免输入错误。
  • 在方法 1(系统连接)中,NetworkManager 从文件中读取 DNS/etc/NetworkManager/system-connections/Auto\ eth0并且 "netconfig" 重构文件“/etc/resolv.conf” 并将 DNS 放入/etc/resolv.conf.
  • 在方法 2(用户连接)中,NetworkManager 从文件中读取 DNS/home/username/.kde4/share/apps/networkmanagement/connections/并且 "netconfig" 重构文件 "/etc/resolv.conf " 并将 DNS 放入/etc/resolv.conf.
  • 在每次系统启动或 NetworkManager 重启时,当 NetworkManager 和 netconfig 协同工作时,都会执行此过程。


注意 1

如果您在/etc/resolv.conf中输入了错误的信息,请再次启用 "netconfig" 并强制重建此文件。此过程使 NetworkManager 能够与 "netconfig" 协同工作。

$ sudo /sbin/netconfig update -f


对网络配置的任何更改都应重新启动 NetworkManager 以更新文件

$ sudo /etc/init.d/network restart


注意 2 (CTRL + C 终止 Ping)

$ ping 208.67.222.222
PING 208.67.222.222 (208.67.222.222) 56(84) bytes of data.
64 bytes from 208.67.222.222: icmp_req=1 ttl=57 time=136 ms
64 bytes from 208.67.222.222: icmp_req=2 ttl=57 time=136 ms
^C
--- 208.67.222.222 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms

使用您计算机的 IP 地址、子网掩码和网关 IP(通常是路由器的 IP)正确配置后,已连接到互联网。


注意 3 (CTRL + C 终止 Ping)

$ ping www.opendns.com
PING www.opendns.com (208.69.38.160) 56(84) bytes of data.
64 bytes from 208.69.38.160: icmp_req=1 ttl=54 time=219 ms
64 bytes from 208.69.38.160: icmp_req=2 ttl=54 time=216 ms
^C
--- www.opendns.com ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms

使用您计算机的 IP 地址、子网掩码和网关 IP(通常是路由器的 IP)正确配置后,已连接到互联网。DNS 配置工作正常。


注意 4 (CTRL + C 终止 Ping)

$ ping 208.67.222.222
PING 208.67.222.222 (208.67.222.222) 56(84) bytes of data.
^C
--- 208.67.222.222 ping statistics ---
19 packets transmitted, 0 received, 100% packet loss, time 17999ms

可能存在网络计算机 IP 或网络掩码或网关 IP(通常是路由器的 IP)的配置问题。请验证配置是否正确。


注意 5 (CTRL + C 终止 Ping)

$ ping www.opendns.com
ping: unknown host www.opendns.com

如果您执行了“ping 208.67.222.222”并且一切正常,而“ping www.opendns.com”出现错误消息“ping: unknown host www.opendns.com”,那么可能存在 DNS 配置问题。请验证您的配置中 DNS 号码是否正确。


方法 1 - 系统连接 (Auto eth0)

系统连接:在用户登录系统之前建立。所有用户可用。

1 - Auto eth0 - KNetworkManager: v0.9



2 - NetworkManger 使用动态 IP 创建的连接“Auto eth0 - 系统连接”未在 Knetworkmanger 中显示。

您无法使用 Knetworkmanager 编辑它,但可以使用 "nm-connection-editor" – NetworkManager-gnome 软件包。

不要尝试使用文本编辑器(vi、nano、pico 等)编辑连接“Auto eth0”,这不起作用。除了编辑 "Auto eth0" 之外,此操作还涉及其他方面。

如果您想阻止此连接,可以使用文本编辑器(vi、nano、pico 等)编辑 "Auto eth0"(它将不会在 nm-connection-editor 中显示)。将在方法 2 – 用户连接中进行说明。



3 - NetworkManager 中的配置文件

/etc/NetworkManager/NetworkManager.conf

/etc/NetworkManager/nm-system-settings.conf(openSUSE 11.4)


文件 "nm-system-settings.conf" 原始 (openSUSE 11.4)

$ sudo cat /etc/NetworkManager/nm-system-settings.conf
[main]
plugins=keyfile,ifcfg-suse
no-auto-default=00:11:22:33:44:55, 


4 - 文件系统连接 "Auto eth0"

/etc/NetworkManager/system-connections/Auto\ eth0


原始文件 "Auto eth0" 动态 IP

$ sudo cat /etc/NetworkManager/system-connections/Auto\ eth0
[802-3-ethernet]
mac-address=00:11:22:33:44:55

[connection]
id=Auto eth0
uuid=11c1111c-b111-3fa5-1ec3-e7597a1c535
type=802-3-ethernet
timestamp=1303133166


5 – 必须通过终端(Konsole - openSUSE 11.4)使用 "kdesu" 启动 "nm-connection-editor"。

$ /usr/bin/kdesu -c /usr/bin/nm-connection-editor

$ /usr/bin/kdesu -c nm-connection-editor

输入 root 密码。

在“网络连接”窗口中,选择“有线”选项卡,选择连接“Auto eth0”,然后单击“编辑”。



6 - 在下一个窗口“编辑 Auto eth0”中

  • 连接名称:Auto eth0 - 自动放置。
  • 允许选中“自动连接”和“对所有用户可用”。
  • 在“有线”选项卡中
    • MAC 地址:您的以太网网络卡的 MAC 地址。
    • MAC 地址克隆:通常为空。
    • MTU:通常为自动。请检查它是否与您的路由器上标记的一致。



7 - 在“802.1x 安全”选项卡中,通常不需要选择任何项目。



8 - 在“IPv4 设置”选项卡中选择

  • 方法:手动
  • 单击“添加”并填写字段
    • 地址:静态 IP,如您的路由器的 IP 范围。例如:172.16.131.129
    • 子网掩码:通常与您的路由器相同。例如:255.255.255.0
    • 网关:通常是您的路由器的 IP。例如:172.16.131.2
    • DNS 服务器(逗号分隔):您可以使用您的 ISP 或 OpenDNS。例如:208.67.222.222,208.67.220.220
    • 选择“需要 IPv4 寻址才能完成此连接”。



9 - “路由”通常为空。



10 - 在“IPv6 设置”选项卡中选择

  • 方法:忽略



11 - 单击“保存”,然后单击“关闭”以终止 "nm-connection-editor"。


12 - 修改后的 "Auto eth0" 文件

  • 数字 24 在 "addresses1=172.16.131.129;24;172.16.131.2," 中表示子网掩码 255.255.255.0。
$ sudo cat /etc/NetworkManager/system-connections/Auto\ eth0
[802-3-ethernet]
duplex=full
mac-address=00:11:22:33:44:55

[connection]
id=Auto eth0
uuid=83c7895f-b397-3ba7-8c75-a4587c1b9324
type=802-3-ethernet
timestamp=1303133166

[ipv6]
method=ignore

[ipv4]
method=manual
dns=208.67.222.222;208.67.220.220;
addresses1=172.16.131.129;24;172.16.131.2;


13 - 现在重新启动 NetworkManager 以查看是否一切正常 (openSUSE 11.4)

$ sudo /etc/init.d/network restart
Shutting down the NetworkManager                                                                                           done
ATTENTION: You have modified /etc/resolv.conf.  Leaving it untouched...
You can find my version in /etc/resolv.conf.netconfig ...

Shutting down network interfaces:
    eth0      device: Marvell Technology Group Ltd. Yukon Optima 88E8059 [PCIe Gigabit Ethernet Controller with AVB] (rev 11)
    eth0      serves root filesystem. Leave it up.
    eth0                                                                                                                   skipped
    
    wlan0     device: Atheros Communications Inc. AR9285 Wireless Network Adapter (PCI-Express) (rev 01)
    wlan0     serves root filesystem. Leave it up.
    wlan0                                                                                                                  skipped
Shutting down service network  .  .  .  .  .  .  .  .  .                                                                   done
Starting the NetworkManager                                                                                                done
                                                                                                                          		  done


如果一切顺利,将显示消息“启动 NetworkManager - 完成 – 完成”。

如果配置文件中存在任何问题,则在 30 秒后将出现消息“启动 NetworkManager - 等待”。


14 - 静态 IP 在 KDE 4.6 上使用 Knetworkmanager 0.9 作为系统连接自动运行。



方法 2 - 用户连接 (eth0-static)

用户连接:在用户登录系统后建立。

1 - 如果您不想使用 "nm-connection-editor",则使用文本编辑器(vi、nano、pico 等)阻止文件 "Auto eth0" 并通过 Knetworkmanager 创建用户网络连接。

配置文件 "Auto eth0" 上升 "[IPv4] method=manual" 没有 IP 地址。

此文件将被 NetworkManager 忽略。

$ sudo nano /etc/NetworkManager/system-connections/Auto\ eth0
[802-3-ethernet]
mac-address=00:11:22:33:44:55

[connection]
id=Auto eth0
uuid=83c7895f-b397-3ba7-8c75-a4587c1b9324
type=802-3-ethernet
timestamp=1303133166

[ipv4]
method=manual

单击 knetworkmanager 图标 -> 管理连接。

必须选中“启用网络”选项。



2 - 网络连接 -> 有线 -> 添加。



3 - 在“添加网络连接 - KDE 控制模块”中

  • 连接名称:eth0-static(您可以选择其他名称,如果需要)
  • 选中“自动连接”。
  • 以太网选项卡
    • 限制为接口:网络接口。
    • MTU:通常为自动。请检查它是否与您的路由器配置一致。



4 - 在“IP 地址”选项卡中

  • 基本设置
  • 方法:手动
  • IP 地址:静态 IP,如您的路由器的 IP 范围。例如:172.16.131.129
  • 子网掩码:通常与您的路由器相同。例如:255.255.255.0
  • 网关:通常是您的路由器的 IP。例如:172.16.131.2
  • DNS 服务器(逗号分隔):您可以使用您的 ISP 或 OpenDNS。例如:208.67.222.222,208.67.220.220



5 - 在“802.1x 安全”选项卡中

  • 通常取消选中“使用 802.1x 身份验证”选项。



6 - 单击“确定”。

  • 通常会要求您输入 KWallet 密码。输入密码并按 ENTER。
  • 在“KDE Wallet Service - 应用程序“KnetworkManager”请求访问 kdewallet 打开钱包”窗口中:始终允许
  • 此选项“应该”每次用户登录系统时自动加载连接“eth0-static”。不幸的是,这并没有发生,并且许多用户在互联网上抱怨此问题。
  • 一种解决方案是在 KWallet 中设置一个空密码,以便不再需要密码(风险自负 – KWALLET 中的低级别安全性!)。




7 - 再次单击“确定”以完成 Knetworkmanager 的网络配置。

现在重新启动 NetworkManager 以查看是否一切正常 (openSUSE 11.4)

$ sudo /etc/init.d/network restart


8 - 静态 IP 在 KDE 4.6 上使用 Knetworkmanager 0.9 作为用户连接自动运行。



9 – 空密码 KWallet(风险自负

Chameleon(启动“Windows”) -> 系统 -> 桌面 Applet -> Kwalletmanager – 钱包管理工具

在终端(Konsole)中:kwalletmanager



更改密码:空密码。



10 - 配置文件 "eth0-Static" 将存储在/home/user/.kde4/share/apps/networkmanagement/connections/ .


11 - 不要通过文本编辑器(vi、nano、pico 等)编辑此文件,而是通过 Knetworkmanager。


12 - 如果您想重用文件 "Auto eth0" 并使用动态 IP,请编辑此文件并删除 "[IPv4] method = manual"。

$ sudo nano /etc/NetworkManager/system-connections/Auto\ eth0
[802-3-ethernet]
mac-address=00:11:22:33:44:55

[connection]
id=Auto eth0
uuid=83c7895f-b397-3ba7-8c75-a4587c1b9324
type=802-3-ethernet
timestamp=1303133166

[ipv4]
method=manual


文件已解锁并准备好由 NetworkManager 使用

$ sudo cat /etc/NetworkManager/system-connections/Auto\ eth0
[802-3-ethernet]
mac-address=00:11:22:33:44:55

[connection]
id=Auto eth0
uuid=83c7895f-b397-3ba7-8c75-a4587c1b9324
type=802-3-ethernet
timestamp=1303133166


现在重新启动 NetworkManager 以查看是否一切正常 (openSUSE 11.4)

$ sudo /etc/init.d/network restart

这将使 NetworkManager 能够重建 "Auto eth0" 动态 IP。


教程由 Noisegroundbr - Raul Libório 合作完成。


外部链接