如果你的系统接入一个拥有DHCP服务器的以太网,那么很可能网络配置已经自动设置好了。如果是这样,你就可以利用到安装盘中的许多网络命令,如ssh,scp,ping,irssi,wget和links。
如果网络已经为你配置好了,/sbin/ifconfig命令就能列出lo以外的一些网卡的信息,如eth0:
代码 1.1: 一个正常工作的网络配置的/sbin/ifconfig命令输出 |
# /sbin/ifconfig (……) eth0 Link encap:Ethernet HWaddr 00:50:BA:8F:61:7A inet addr:192.168.0.2 Bcast:192.168.0.255 Mask:255.255.255.0 inet6 addr: fe80::50:ba8f:617a/10 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:1498792 errors:0 dropped:0 overruns:0 frame:0 TX packets:1284980 errors:0 dropped:0 overruns:0 carrier:0 collisions:1984 txqueuelen:100 RX bytes:485691215 (463.1 Mb) TX bytes:123951388 (118.2 Mb) Interrupt:11 Base address:0xe800 |
如果你是通过代理访问网络,就要在安装过程中设置代理信息。设置代理很容易:只要定义一个包含代理服务器信息的变量即可。
通常情况下只要将这个变量定义为代理服务器主机名。作为例子,我们假定代理名叫proxy.gentoo.org,端口为8080。
代码 1.2: 定义代理服务器 |
(如果代理传输HTTP数据) # export http_proxy="http://proxy.gentoo.org:8080" (如果代理传输FTP数据) # export ftp_proxy="ftp://proxy.gentoo.org:8080" (如果代理传输RSYNC数据) # export RSYNC_PROXY="proxy.gentoo.org:8080" |
如果代理要求用户名和密码,请使用以下格式的变量:
代码 1.3: 添加用户名/密码到代理变量 |
http://用户名:密码@proxy.gentoo.org:8080 |
ping一下你的ISP提供的DNS服务器(可于/etc/resolv.conf中找到)和一个任选的网站,以确定数据包传到了网上、DNS域名解析正常,等等。
代码 1.4: 进一步测试网络 |
# ping -c 3 www.gentoo.org
|
如果现在你的网络可用了,就可以略过本章的余下部分,进入下一章预备磁盘。如果没有,请接下去阅读。
如果网络没有马上配置好,一些安装介质允许你使用net-setup(普通或无线网络),pppoe-setup(ADSL用户)或pptp(PPTP用户——x86、amd64、alpha、ppc和ppc64平台可用)来继续配置。
如果你的安装介质没有提供这些工具或者你的网络还是不能运行,请阅读手动配置网络。
如果网络没有自动配置好,最简单的配置方法是执行net-setup脚本:
代码 2.1: 执行net-setup脚本 |
# net-setup eth0
|
net-setup会问你一些关于你的网络环境的问题。全部回答完之后,你就能拥有一个正常工作的网络连接。按照前面叙述的方法测试一下网络连接。如果测试结果正常,恭喜!现在你已准备好开始安装Gentoo了。略过本章的余下部分并进入预备磁盘。
如果网络还不能配置好,请继续阅读手动配置网络。
假如你通过PPPoE连接internet,安装盘(所有版本)中包含的ppp工具会让事情变得简单。使用所提供的pppoe-setup脚本来配置网络。它会提示你输入一些信息,包括连接到你的adsl调制解调器的网络设备、用户名和密码、DNS服务器的IP以及是否需要一个基本的防火墙。
代码 2.2: 使用ppp |
# pppoe-setup # pppoe-start |
如果配置出错了,请仔细检查/etc/ppp/pap-secrets或/etc/ppp/chap-secrets,确保你在其中输入的用户名和密码无误,并确定使用了正确的以太网设备。如果网络设备不存在,必须加载适当的网络模块。这种情况下你应该继续阅读手动配置网络,我们在其中解释了如何加载适当的网络模块。
如果一切正常,请继续阅读预备磁盘。
如果你需要支持PPTP连接,可以使用我们的安装光盘中所提供的pptpclient。不过你必须首先确定配置没有问题。编辑/etc/ppp/pap-secrets或/etc/ppp/chap-secrets使其中包含正确的用户名/密码对:
代码 2.3: 编辑/etc/ppp/chap-secrets |
# nano -w /etc/ppp/chap-secrets
|
然后如果有必要,调整一下/etc/ppp/options.pptp。
代码 2.4: 编辑/etc/ppp/options.pptp |
# nano -w /etc/ppp/options.pptp
|
当做好了所有的配置,就请执行pptp(跟随一些不能在options.pptp中设置的选项)来连接服务器:
代码 2.5: 连接到一个“拨入”服务器 |
# pptp <服务器ip>
|
现在请继续阅读预备磁盘。
安装光盘在启动时,会尝试检测所有硬件设备并加载适当的内核模块(驱动程序)以支持你的硬件。绝大多数情况下,它都做得非常好。尽管如此,某些情况下它还是可能无法自动载入你需要的内核模块。
如果net-setup或pppoe-setup执行失败,那么很可能是没有一下子找到你的网卡。这意味着你将不得不手动加载适当的内核模块。
要找出我们为网络提供了哪些内核模块,请使用ls:
代码 3.1: 搜索所提供的模块 |
# ls /lib/modules/`uname -r`/kernel/drivers/net
|
如果找到了你的网卡的驱动程序,请使用modprobe来加载这个内核模块:
代码 3.2: 使用modprobe加载一个内核模块 |
(作为一个例子,我们载入pcnet32模块) # modprobe pcnet32 |
现在用ifconfig检查一下是否检测到你的网卡了。成功检测到的网卡会输出类似下面这样的信息:
代码 3.3: 测试网卡是否可用,成功 |
# ifconfig eth0
eth0 Link encap:Ethernet HWaddr FE:FD:00:00:00:00
BROADCAST NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
|
不过如果你得到如下错误信息,说明没有检测到网卡。
代码 3.4: 测试网卡是否可用,失败 |
# ifconfig eth0
eth0: error fetching interface information: Device not found
|
如果你的系统中存在多块网卡,分别名为eth0、eth1等等。确保你想要使用的那张网卡没有问题,并在阅读本文整篇文章时都记得使用它正确的名字。我们假定使用的是eth0这张网卡。
假如你现在拥有一张成功检测到的网卡,可以再试一试net-setup或pppoe-setup(现在应该能正常使用了)。不过对于用户中的喜欢刨根究底的人,我们会为你解释如何通过手动配置网络。
基于你的网络设置,请从以下列表中选择相应的章节继续:
DHCP(动态主机配置协议)可以让你自动获得网络信息(IP地址、子网掩码、广播地址、网关以及域名服务器等)。只有在你的网络中拥有一台DHCP服务器时才能获得(或者你的网络服务提供商提供DHCP服务)。执行dhcpcd使网络接口自动获得这些信息:
代码 3.5: 使用dhcpcd |
# dhcpcd eth0 一些网络管理员要求你使用DHCP服务器所提供的主机名和域名。 这种情况下请用 # dhcpcd -HD eth0 |
如果工作正常(尝试ping一些互联网上的服务器,比如Google),那么你就完全准备好继续下一步了。略过本章的余下部分并继续阅读预备磁盘。
注意: iwconfig命令仅在x86、amd64和ppc安装光盘中提供。不过在其他情况下,你仍可以按照linux-wlan-ng项目的介绍,来使无线扩展运作起来。 |
如果你正在使用一张无线(802.11)网卡,那么在继续任何一步之前你需要先配好无线设置。要查看当前的无线网卡设置,可以使用iwconfig。执行iwconfig会显示以下类似信息:
代码 3.6: 显示当前无线设置 |
# iwconfig eth0
eth0 IEEE 802.11-DS ESSID:"GentooNode"
Mode:Managed Frequency:2.442GHz Access Point: 00:09:5B:11:CC:F2
Bit Rate:11Mb/s Tx-Power=20 dBm Sensitivity=0/65535
Retry limit:16 RTS thr:off Fragment thr:off
Power Management:off
Link Quality:25/10 Signal level:-51 dBm Noise level:-102 dBm
Rx invalid nwid:5901 Rx invalid crypt:0 Rx invalid frag:0 Tx
excessive retries:237 Invalid misc:350282 Missed beacon:84
|
注意: 一些无线网卡的设备名可能为wlan0或ra0,而不是eth0。执行不带任何命令行参数的iwconfig以确定正确的设备名。 |
对大多数用户来说,可能只有两处设置需要重点修改,即ESSID(亦称无线网络名)或WEP密钥。如果前面列出的ESSID和AP地址正是你的无线AP的ESSID和地址,并且你不使用WEP,那么你的无线网络已工作正常。如果你需要修改你的ESSID或添加一个WEP密钥,可以参照下列命令:
注意: 如果你的无线网络使用的是WPA或者WPA2,你将需要使用wpa_supplicant。欲获取更多有关在Gentoo Linux里配置无线网络的信息,请阅读Gentoo手册中的无线网络一章。 |
代码 3.7: 修改ESSID和/或添加WEP密钥 |
(这里设置网络名为“GentooNode”) # iwconfig eth0 essid GentooNode (这里设置一个十六进制WEP密钥) # iwconfig eth0 key 1234123412341234abcd (这里设置一个ASCII密钥——以"s:"作为前缀) # iwconfig eth0 key s:某密钥 |
然后可以使用iwconfig再次确认你的无线设置。一旦你配好无线设置,就可以继续配置下一节(理解网络术语)所述的IP级别的网络选项,或者可以使用前面所述的net-setup工具。
注意: 如果你知道IP地址、广播地址、子网掩码和域名服务器,那你就可以略过本节并继续阅读使用ifconfig和route。 |
如果以上所做的全部失败,你将不得不手动配置你的网络。这其实一点也不难。不过,你需要熟悉一些网络术语,才能配置好网络令自己满意。读完本节之后,你将了解到什么是网关,子网掩码是作什么用的,广播地址是如何形成的,以及为什么需要域名服务器。
在一个网络中,所有主机都通过IP地址(互联网协议地址)来识别。一个这种地址是由四个0到255之间的整数组合成的。嗯,至少我们是这样认识它的。实际上,一个IP地址由32个比特(0和1)组成。让我们看一个例子:
代码 3.8: IP地址的一个例子 |
IP地址(整数): 192.168.0.2 IP地址(位): 11000000 10101000 00000000 00000010 -------- -------- -------- -------- 192 168 0 2 |
在所有可访问到的网络里,这样的IP地址跟主机是一一对应的(比如你能够连接到的每台主机必须拥有一个唯一的IP地址)。为了区别一个网络内部和外部的主机,IP地址被分为两个部分:网络部分和主机部分。
子网掩码用来描述这种区分,它由一系列的1跟随着一系列的0组成。IP中映射在1上的部分为网络部分,另一部分为主机部分。照例,子网掩码可以描述为IP地址的形式。
代码 3.9: 区分网络/主机的例子 |
IP地址: 192 168 0 2 11000000 10101000 00000000 00000010 子网掩码: 11111111 11111111 11111111 00000000 255 255 255 0 +--------------------------+--------+ 网络 主机 |
也就是说,192.168.0.14仍是我们的例子网络中的成员,而192.168.1.2就不是了。
广播地址是一个跟你的网络在同一个网段的IP地址,只是它的主机部分全部为1。你的网络中所有的主机都监听这个IP地址。它真正的用途是用来广播数据包。
代码 3.10: 广播地址 |
IP地址: 192 168 0 2 11000000 10101000 00000000 00000010 广播: 11000000 10101000 00000000 11111111 192 168 0 255 +--------------------------+--------+ 网络 主机 |
为了能在互联网上冲浪,你必须知道是哪台主机在共享Internet连接。这台主机称为网关。由于它是一台普通主机,所以它有一个普通的IP地址(比如192.168.0.1)。
前面我们陈述了每台主机拥有它自己的IP地址。为了能够通过域名(而不是IP地址)连到这台主机,你需要一种服务,以将一个域名(如dev.gentoo.org)翻译成一个IP地址(如64.5.62.82)。这种服务称为域名服务。你必须在/etc/resolv.conf中定义必要的域名服务器以享用这种服务。
某些情况下,你的网关也作为域名服务器提供服务。否则就必须加入ISP提供的域名服务器。
总结一下,继续下一步之前你需要了解下列知识:
网络名词 | 范例 |
你的IP地址 | 192.168.0.2 |
子网掩码 | 255.255.255.0 |
广播 | 192.168.0.255 |
网关 | 192.168.0.1 |
域名服务器 | 195.130.130.5, 195.130.130.133 |
设置网络包括三个步骤。首先我们使用ifconfig为自己设置一个IP地址。然后使用route设置到网关的路由。最后我们通过将域名服务器的IP写入/etc/resolv.conf来结束整个过程。
为了设置一个IP地址,你需要先获得你的IP地址、广播地址和子网掩码。然后执行以下命令,用你的IP地址、广播地址和子网掩码分别替代${IP地址}、${广播}和${子网掩码}。
代码 3.11: 使用ifconfig |
# ifconfig eth0 ${IP地址} broadcast ${广播} netmask ${子网掩码} up
|
现在使用route设置路由。用你的网关IP地址代替${网关}:
代码 3.12: 使用route |
# route add default gw ${网关}
|
现在用你喜欢的编辑器(我们的例子中使用nano)打开/etc/resolv.conf:
代码 3.13: 创建/etc/resolv.conf |
# nano -w /etc/resolv.conf
|
现在使用下面的模板填写你的域名服务器。注意用适当的域名服务器地址替换${域名服务器1}和${域名服务器2}。
代码 3.14: /etc/resolv.conf模板 |
nameserver ${域名服务器1} nameserver ${域名服务器2} |
这就是全部了。现在通过ping一些互联网上的服务器(比如Google)来测试一下你的网络。如果一切正常,那就恭喜了。你现在已准备好开始安装Gentoo了。接下来请继续阅读预备磁盘。
本文档的内容遵循知识共享-署名-相同方式共享许可协议