## 4.2 连上 Internet 的设定方法
在前几章我们就谈过,台湾地区主要连上因特网的方法有(1)学术网络、(2)ADSL 固接与拨接、(3)Cable modem 等方式,同时,手动设定 IP 参数是很重要的学习,因此,底下的各节中,第一节的手动设定固定 IP 一定要做过一次! 其他的才依照您的环境去设定去学习!
此外,由于目前使用 Linux notebook 的使用者大增,而 Notebook 通常是以无线网络来联机的, 所以鸟哥在这里也尝试使用一款无线网络来进行联机设定。至于传统的 56 Kbps 拨接则因为速度较慢且使用度越来越低, 所以在这里就不多做介绍了。
* * *
### 4.2.1 手动设定固定 IP 参数 (适用学术网络、ADSL 固定制) + 五大检查步骤
所谓的固定 IP 就是指在你的网络参数当中,你只要输入既定的 IP 参数即可。那么这个既定的 IP 来自哪里呢? 一般来说,他可能来自于:
* 学术网络:由学校单位直接给予的一组 IP 网络参数;
* 固定制 ADSL:向 ISP 申请的一组固定 IP 的网络参数;
* 企业内部或 IP 分享器内部的局域网络:例如企业内使用私有 IP 作为局域网络的联机之用时,那么我们的 Linux 当然也就需要向企业的网管人员申请一组固定的 IP 网络参数啰!
这样清楚吗?也就是说,我们取得的固定 IP 参数并非一定是 public IP 喔!反正就是一组可接受的固定 IP 就是了! 所以在架设你的环境之前,请先注意所有网络参数的来源正确性啊!好了,那么你的 IP 要如何设定呢?先回去翻翻第三章 [3.2.1](http://linux.vbird.org/linux_server/0120intranet.php#protocol_parameter) 里面的图 3.2-1,我们对外网卡 (eth0) 的信息为:
```
IP: 192.168.1.100
Netmask: 255.255.255.0
Gateway: 192.168.1.254
DNS IP: 168.95.1.1
Hostname: www.centos.vbird
```
那么要修改的四个档案与相关的启动脚本,以及重新启动后需要用啥指令观察的重点,鸟哥再次的使用一个简单的表格来说明, 你只要记得这几个表格内的重要档案与指令,以后在修改网络参数时,就不会出现错误了!看看吧!
| 修改的参数 | 配置文件与重要启动脚本 | 观察结果的指令 |
| --- | --- |
| IP相关参数 | /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/init.d/network restart | ifconfig (IP/Netmask) route -n (gateway) |
| DNS | /etc/resolv.conf | dig www.google.com |
| 主机名 | /etc/sysconfig/network /etc/hosts | hostname (主机名) ping $(hostname) reboot |
底下我们就分别针对上面的各项设定来进行档案的重新修改啰!
1. IP/Netmask/Gateway 的设定、启动与观察
设定网络参数得要修改 /etc/sysconfig/network-scripts/ifcfg-eth0,请记得,这个 ifcfg-eth0 与档案内的 DEVICE 名称设定需相同,并且,在这个档案内的所有设定,基本上就是 bash 的变量设定规则啦 (注意大小写)!
```
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0" <==网络卡代号,必须要 ifcfg-<u>eth0</u> 相对应
HWADDR="08:00:27:71:85:BD" <==就是网络卡地址,若只有一张网卡,可省略此项目
NM_CONTROLLED="no" <==不要受到其他软件的网络管理!
ONBOOT="yes" <==是否默认启动此接口的意思
BOOTPROTO=none <==取得IP的方式,其实关键词只有dhcp,手动可输入none
IPADDR=192.168.1.100 <==就是 IP 啊
NETMASK=255.255.255.0 <==就是子网掩码
GATEWAY=192.168.1.254 <==就是预设路由
# 重点是上面这几个设定项目,底下的则可以省略的啰!
NETWORK=192.168.1.0 <==就是该网段的第一个 IP,可省略
BROADCAST=192.168.1.255 <==就是广播地址啰,可省略
MTU=1500 <==就是最大传输单元的设定值,若不更改则可省略
```
上面的资料很好理解吧!请注意每个变量(左边的英文)都应该要大写! 否则我们的 script 会误判!事实上鸟哥的设定值只有最上面的 8 个而已,其他的 NETWORK, BROADCAST, MTU 鸟哥都没有设定喔! 至于参数的说明方面,IPADDR, NETMASK, NETWORK, BROADCAST 鸟哥在这里就不再多说,要谈的是几个重要的设定值:
* DEVICE:这个设定值后面接的装置代号需要与文件名 (ifcfg-eth0) 那个装置代号相同才行!否则可能会造成一些装置名称找不到的困扰。
* BOOTPROTO:启动该网络接口时,使用何种协议? 如果是手动给予 IP 的环境,请输入 static 或 none ,如果是自动取得 IP 的时候, 请输入 dhcp (不要写错字,因为这是最重要的关键词!)
* GATEWAY:代表的是『整个主机系统的 default gateway』, 所以,设定这个项目时,请特别留意!不要有重复设定的情况发生喔!也就是当你有 ifcfg-eth0, ifcfg-eth1.... 等多个档案,只要在其中一个档案设定 GATEWAY 即可
* GATEWAYDEV:如果你不是使用固定的 IP 作为 Gateway , 而是使用网络装置作为 Gateway (通常 Router 最常有这样的设定),那也可以使用 GATEWAYDEV 来设定通讯闸装置呢!不过这个设定项目很少使用就是了!
* HWADDR:这个东西就是网络卡的卡号了!在仅有一张网卡的情况下,这个设定值没有啥功能, 可以忽略他。但如果你的主机上面有两张一模一样的网卡,使用的模块是相同的。 此时,你的 Linux 很可能会将 eth0, eth1 搞混,而造成你网络设定的困扰。如何解决呢? 由于 MAC 是直接写在网卡上的,因此指定 HWADDR 到这个配置文件中,就可以解决网卡对应代号的问题了!很方便吧!
设定完毕之后,现在让我们来重新启动网络接口吧!这样才能更新整个网络参数嘛!
```
[root@www ~]# /etc/init.d/network restart
Shutting down interface eth0: [ OK ] <== 先关闭界面
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ] <== 再开启界面
Bringing up interface eth0: [ OK ]
# 针对这部主机的所有网络接口 (包含 lo) 与通讯闸进行重新启动,所以网络会停顿再开
```
这样就处理完毕啰,那接下来当然就是观察看看啰!
```
# 检查一:当然是要先察看 IP 参数对否,重点是 IP 与 Netmask 啦!
[root@www ~]# ifconfig eth0
eth0 Link encap:Ethernet HWaddr 08:00:27:71:85:BD
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe71:85bd/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:655 errors:0 dropped:0 overruns:0 frame:0
TX packets:468 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:61350 (59.9 KiB) TX bytes:68722 (67.1 KiB)
# 有出现上头那个 IP 的数据才是正确的启动;特别注意 inet addr 与 Mask 项目
# 这里如果没有成功,得回去看看配置文件有没有错误,然后再重新 network restart !
# 检查二:检查一下你的路由设定是否正确
[root@www ~]# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 1002 0 0 eth0
0.0.0.0 192.168.1.254 0.0.0.0 UG 0 0 0 eth0
# 重点就是上面的特殊字体!前面的 0.0.0.0 代表预设路由的设定值!
# 检查三:测试看看与路由器之间是否能够联机成功呢!
[root@www ~]# ping -c 3 192.168.1.254
PING 192.168.1.254 (192.168.1.254) 56(84) bytes of data.
64 bytes from 192.168.1.254: icmp_seq=1 ttl=64 time=2.08 ms
64 bytes from 192.168.1.254: icmp_seq=2 ttl=64 time=0.309 ms
64 bytes from 192.168.1.254: icmp_seq=3 ttl=64 time=0.216 ms
--- 192.168.1.254 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 0.216/0.871/2.088/0.861 ms
# 注意啊!有出现 ttl 才是正确的响应!如果出现『 Destination Host Unreachable 』
# 表示没有成功的联机到你的 GATEWAY 那表示出问题啦!赶紧检查有无设定错误。
```
要注意,第三个检查如果失败,可能要看你的路由器是否已经关闭?或者是你的 switch/hub 是否有问题,或者是你的网络线是否错误,还是说你的或路由器的防火墙设定错误了?要记得去解决喔! 这三个检查做完而且都成功之后,那么你的 TCP/IP 参数设定已经完毕了!这表示你可以使用 IP 上网啦! 只是还不能够使用主机名上网就是了。接下来就是要设定 DNS 啰!
2. DNS 服务器的 IP 设定与观察
这个 /etc/resolv.conf 很重要啦!他会影响到你是否可以查询到主机名与 IP 的对应喔!通常如下的设定就 OK 了!
```
[root@www ~]# vim /etc/resolv.conf
nameserver 168.95.1.1
nameserver 139.175.10.20
```
我们以中华电信与 SeedNet 在南部的 DNS 服务器之 IP 作为设定的方式!请注意一下,如果你不知道你的最接近的 DNS 服务器的 IP ,那么直接输入 nameserver 168.95.1.1 这个中华电信的 DNS 主机即可!不过如果你公司内部有设定防止 DNS 的要求封包的防火墙规则时,那么你就得要请教贵公司的网管单位告知你的 DNS IP 设定啦!然后赶紧测试看看:
```
# 检查四:看看 DNS 是否顺利运作了呢?很重要的测试喔!
[root@www ~]# dig www.google.com
....(前面省略)....
;; QUESTION SECTION:
;www.google.com. IN A
;; ANSWER SECTION:
www.google.com. 428539 IN CNAME www.l.google.com.
www.l.google.com. 122 IN A 74.125.71.106
....(中间省略)....
;; Query time: 30 msec
;; SERVER: 168.95.1.1#53(168.95.1.1) <==这里的项目也很重要!
;; WHEN: Mon Jul 18 01:26:50 2011
;; MSG SIZE rcvd: 284
```
上面的输出有两个重点,一个是问题查询的是 www.google.com 的 A (Address) 参数,并且从回答 (Answer) 里面得到我们所需的 IP 参数。最后面一段的 Server 项目非常重要!你得要看是否与你的设定相同的那部 DNS 服务器 IP 才行! 以上面输出为例,鸟哥使用中华电信的 DNS 服务器,所以就出现 168.95.1.1 的 IP 地址啰。
3. 主机名的修改、启动与观察
修改主机名就得要改 /etc/sysconfig/network 以及 /etc/hosts 这两个档案,这两个档案的内容又简单的要命喔!
```
[root@www ~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=www.centos.vbird
[root@www ~]# vim /etc/hosts
192.168.1.100 www.centos.vbird
# 特别注意,这个档案的原本内容不要删除!只要新增额外的数据即可!
```
修改完毕之后要顺利启动的话,得要重新启动才可以。为什么需要重新启动呢?因为系统已经有非常多的服务启动了, 这些服务如果需要主机名,都是到这个档案去读取的。而我们知道配置文件更新过后,服务都得要重新启动才行。 因此,已经启动而且有读到这个档案的服务,就得要重新启动啊!真麻烦~因此,最简单的方法,就是重新启动。 但重开机之前还需要进行一项工作,否则,你的系统开机会花掉很多时间喔!
```
[root@www ~]# hostname
localhost.localdomain
# 还是默认值,尚未更新成功!我们还得要进行底下的动作!
# 检查五:看看你的主机名有没有对应的 IP 呢?没有的话,开机流程会很慢!
[root@www ~]# ping -c 2 www.centos.vbird
PING www.centos.vbird (192.168.1.100) 56(84) bytes of data.
64 bytes from www.centos.vbird (192.168.1.100): icmp_seq=1 ttl=64 time=0.015 ms
64 bytes from www.centos.vbird (192.168.1.100): icmp_seq=2 ttl=64 time=0.028 ms
--- www.centos.vbird ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.015/0.021/0.028/0.008 ms
# 因为我们有设定 /etc/hosts 规定 www.centos.vbird 的 IP ,
# 所以才找的到主机主机名对应的正确 IP!这时才能够 reboot 喔!重要重要!
```
上面的信息中,检查的内容总共有五个步骤,这五个步骤每一步都要成功后才能够继续往下处理喔! 至于最重要的一点,当你修改过 /etc/sysconfig/network 里面的 HOSTNAME 后, 务必要重新启动 (reboot)。但是重新启动之前,请务必『 ping 主机名』且得到 time 的响应才行!
* * *
### 4.2.2 自动取得 IP 参数 (DHCP 方法,适用 Cable modem、IP 分享器的环境)
可自动取得 IP 的环境是怎么回事啊?不是很简单吗?当你在 IP 分享器后头的主机在设定时,不是都会选择『自动取得 IP 』吗?那就是可自动取得 IP 的环境啦!那么这个自动取得是怎么回事啊?也不难了解啦,其实就是『有一部主机提供 DHCP 服务给整个网域内的计算机』就是了!例如 IP 分享器就可能是一部 DHCP 主机。那么 DHCP 是啥? 他是:Dynamic Host Configuration Protocol 的简写,顾名思义,他可以『动态的调整主机的网络参数』的意思。详细的 [DHCP](http://linux.vbird.org/linux_server/0340dhcp.php) 功能我们会在第十二章说明的。好了,那么这个方法适合哪些联机的方式呢?大致有这些:
* Cable Modem:就是使用电视缆线进行网络回路联机的方式啊!
* ADSL 多 IP 的 DHCP 制:就鸟哥所知, SeedNet 有推出一种专案, 可以让 ADSL 用户以 DHCP 的方式来自动取得 IP ,不需要拨接。那使用的也是这种方法!
* IP 分享器或 NAT 有架设 DHCP 服务时:当你的主机位于 IP 分享器的后端,或者是你的 LAN 当中有 NAT 主机且 NAT 主机有架设 DHCP 服务时, 那取得 IP 的方法也是这样喔!
你依旧需要前一小节手动设定 IP 的主机名设定 (第三步骤),至于 IP 参数与 DNS 则不需要额外设定, 仅需要修改 ifcfg-eth0 即可喔!这样处理吧:
```
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR="08:00:27:71:85:BD"
NM_CONTROLLED="no"
ONBOOT=yes
BOOTPROTO=dhcp
```
没盖你喔!只要这几个项目即可,其他的都给他批注 (#) 掉!尤其是那个 GATEWAY 一定不能设定! 避免互相干扰!然后给他重新启动网络:
```
[root@www ~]# /etc/init.d/network restart
Shutting down interface eth0: [ OK ] <== 先关闭界面
Shutting down loopback interface: [ OK ]
Bringing up loopback interface: [ OK ] <== 再开启界面
Bringing up interface eth0: [ OK ]
Determining IP information for eth0.. [ OK ] <== 重要!是 DHCP 的特点!
# 你可以透过最后一行去判断我们是否有透过 DHCP 协议取得 IP!
```
我们局域网络内的 IP 分享器或 DHCP 主机,就会立刻帮你的 Linux 主机做好网络参数的规划, 包括 IP 参数与 GATEWAY 等,就通通设定妥当啦!很方便也很简单吧!
**Tips:** 基本上,/etc/resolv.conf 预设会被 DHCP 所修改过,因此你不需要修改 /etc/resolv.conf。甚至连主机名都会被 DHCP 所修订。不过,如果你有特殊需求,那么 /etc/sysconfig/network 以及 /etc/hosts 请自行修改正确呦!
![](https://box.kancloud.cn/2016-05-13_5735736501917.gif)
* * *
### 4.2.3 ADSL 拨接上网 (适用台湾 ADSL 拨接以及光纤到大楼)
终于来到台湾最热门的 ADSL 拨接上网的介绍啦!来谈一谈如何在 Linux 上拨接上网吧! 要拨接上网时,可以使用 rp-pppoe 这套软件来帮忙([注1](#ps1)),所以,你必须要确认你的 Linux distributions 上面已经存在这个玩意儿了!CentOS 本身就含有 rp-pppoe ,请使用原版光盘,或者是使用 yum 来进行安装吧!
```
[root@www ~]# mount /dev/cdrom /mnt
[root@www ~]# cd /mnt/Packages
[root@www ~]# rpm -ivh rp-pppoe* ppp*
[root@www ~]# rpm -q rp-pppoe
rp-pppoe-3.10-8.el6.x86_64 <==你瞧瞧!确实已经安装喔!
```
当然,很多 distributions 都已经将拨接这个动作归类到图形接口里面去了,所以可能没有提供 rp-pppoe 这个咚咚,没关系,你可以到底下的网站去取得的:
* [http://www.roaringpenguin.com/pppoe/](http://www.roaringpenguin.com/pppoe/)
* [http://freshmeat.net/projects/rp-pppoe/](http://freshmeat.net/projects/rp-pppoe/)
然后再自行手动安装即可。如何安装的过程鸟哥在这里就不谈了,请自行前往基础篇的[原始码与 Tarball 章节](http://linux.vbird.org/linux_basic/0520source_code_and_tarball.php)查阅相关资料吧。 另外请注意,虽然整个联机是由主机的以太网络卡连接到 ADSL 调制解调器上,然后再透过电话线路联机到 ISP 的机房去,最后在主机上以 rp-pppoe 拨接达成联机。但是 rp-pppoe 使用的是 Point to Point (ppp) over Ethernet 的点对点协议所产生的网络接口,因此当你顺利的拨接成功之后, 会多产生一个实体网络接口『 ppp0 』喔!
而由于 ppp0 是架构在以太网络卡上的,你必须要有以太网卡,同时,即使拨接成功后,你也不能将没有用到的 eth0 关闭喔!注意注意!因此,拨接成功后就会有:
* 内部循环测试用的 lo 接口;
* 网络卡 eth0 这个接口;
* 拨接之后产生的经由 ISP 对外连接的 ppp0 接口。
虽然 ppp0 是架构在以太网卡上面的,但上头这三个接口在使用上是完全独立的,互不相干, 所以关于 eth0 的使用上,你就可以这样思考:
* 这张网络卡 (假设是 eth0) 有接内部网络(LAN):
举例来说,如果你的局域网络如同第三章的[图3.1-1](http://linux.vbird.org/linux_server/0120intranet.php#fig3.1-1) 所示,也就是说,你的 ppp0 可以连上 Internet ,但是内网则使用 eth0 来跟其他内部主机联机时, 那么你的 IP 设定参数: /etc/sysconfig/network-scripts/ifcfg-eth0 应该要给予一个私有 IP 以使内部的 LAN 也可以透过 eth0 来进行联机啊!所以鸟哥会这样设定:
```
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
NM_CONTROLLED=no
IPADDR=192.168.1.100
NETMASK=255.255.255.0
ONBOOT=yes
```
并请记得一件事情,那就是:『千万不要有 GATEWAY 的设定!』, 因为 ppp0 拨接成功后, ISP 会主动的给予 ppp0 接口一个可以连上 Internet 的 default gateway , 如果你又设定另一个 default gateway ,两个网关可能会造成你的网络不通喔!
* 这部主机仅有连接 ADSL 调制解调器,并没有内部网域:
如果这部 Linux 主机是直接连接到 ADSL 调制解调器上头,并没有任何内部主机与其联机,也就是说,你的 eth0 有没有 IP 都没有关系时,那么上面的设定当中的那个『 ONBOOT=yes 』直接改成『 ONBOOT=no 』就好了!那拨接不会有问题吗? 没关系啊,因为你拨接启动 ppp0 时,系统会主动的唤醒 eth0 ,只是 eth0 不会有 IP 信息就是了。
至于其他的档案请参考 [4.2.1 手动设定 IP 的联机方法](#connect_fix_IP)来处理即可。 当然啦,拨接之前,请确认你的 ADSL 调制解调器 (小乌龟) 已经与主机联机妥当,也取得账号与密码,也安装好了 rp-pppoe ,然后就来处理吧!
1. 设定连接到 ADSL 调制解调器那张网卡 (暂订为 eth0)
说实在的,鸟哥比较建议将内外网域分的清清楚楚比较好,所以,通常我都是主机上面接两块网络卡, 一张对内一张对外,对外的那张网卡预设是不启动的 (ONBOOT=no)。考虑到你可能仅有一张网卡,那么鸟哥也会给你建议, 直接给 eth0 一个私有 IP 接口吧!设定就如同本节稍早提到的那样啰!
2. 设定拨接的账号与密码
好了,那么开始来设定你的账号与密码吧!这个动作只要在第一次建立账号/密码时处理即可,未来除非账号密码改变了, 否则这个动作都不需要重新处理啦!(留意一下,拨接的设定指令有改变喔!与之前的 adsl-setup 不一样啰!仔细看看!)
```
[root@www ~]# pppoe-setup
Welcome to the PPPoE client setup. First, I will run some checks on
your system to make sure the PPPoE client is installed properly...
LOGIN NAME (从 ISP 处取得的账号填入处)
Enter your Login Name (default root): T1234567
# 注意啊!这个账号名称是 ISP 给的,其中如果是 SeedNet ,输入如上,
# 如果是 Hinet 的话,就得要输入 username@hinet.net,后面的主机名也要写。
INTERFACE (ADSL 调制解调器所接的网卡代号)
Enter the Ethernet interface connected to the PPPoE modem
For Solaris, this is likely to be something like /dev/hme0.
For Linux, it will be ethX, where 'X' is a number.
(default eth0): eth0
Enter the demand value (default no): no
DNS (就填入 ISP 处取得的 DNS 号码吧)
Enter the DNS information here: 168.95.1.1
Enter the secondary DNS server address here: <==若无第二部就按 enter
PASSWORD (从 ISP 处取得的密码啊!)
Please enter your Password: <==输入密码两次,屏幕不会有星号 * 喔!
Please re-enter your Password:
USERCTRL (要不要让一般用户启动与关闭?最好是不要!)
Please enter 'yes' (three letters, lower-case.) if you want to allow
normal user to start or stop DSL connection (default yes): no
FIREWALLING (防火墙方面,先取消,用自己未来设定的)
The firewall choices are:
0 - NONE: This script will not set any firewall rules. You are responsible
for ensuring the security of your machine. You are STRONGLY
recommended to use some kind of firewall rules.
1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation
2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway
for a LAN
Choose a type of firewall (0-2): 0
Start this connection at boot time (要不要开机立即启动拨接程序?)
Do you want to start this connection at boot time?
Please enter no or yes (default no):yes
** Summary of what you entered **
Ethernet Interface: eth0
User name: T1234567
Activate-on-demand: No
Primary DNS: 168.95.1.1
Firewalling: NONE
User Control: no
Accept these settings and adjust configuration files (y/n)? y
Adjusting /etc/sysconfig/network-scripts/ifcfg-ppp0
Adjusting /etc/resolv.conf
(But first backing it up to /etc/resolv.conf.bak)
Adjusting /etc/ppp/chap-secrets and /etc/ppp/pap-secrets
(But first backing it up to /etc/ppp/chap-secrets.bak)
(But first backing it up to /etc/ppp/pap-secrets.bak)
# 上面具有特殊字体的档案主要功能是:
# ifcfg-ppp0 :亦即是 ppp0 这个网络接口的配置文件案;
# resolv.conf :这个档案会被备份后,然后以刚刚我们上面输入的 DNS 数据取代;
# pap-secrets, chap-secrets:我们输入的密码就放在这里!
```
这样设定就成功啦!很简单吧!唯一需要注意的是在上面的 username 那个地方,千万注意, 因为 hinet 与 seednet 的设定是不一样的!千万小心呢!否则会无法连上线呦!此外, 由于我们在未来还会有 firewall 的建置,所以这里不太需要使用到防火墙啦!否则也可能无法连上 Internet 呦!另外,注意一下,一般拨接需要的身份认证机制透过的是 chap 与 pap([注2](#ps2)), 在 rp-pppoe 这套软件中,就将两种认证机制所需的数据通通记录下来啦!那就是 chap-secrets, pap-secrets, 你可以分别察看两个档案的内容,就知道那是啥咚咚了!
3. 透过 adsl-start, pppoe-start 或 network restart 开始拨接上网
启动 ADSL 的方法很多,通常鸟哥都是使用 /etc/init.d/network restart 即可处理!不过,如果发生一些不明的错误, 也可以使用 pppoe-stop 关闭后再以 pppoe-start 立即启动拨接试看看。
通常比较容易出问题的地方在于硬件的联机情况,请先确认所有的硬件联机没有问题喔! 通常,如果你使用小乌龟 (ATU-R) 时,请使用跳线连接网络卡与 ATU-R。另外一个容易出错的地方在于输入的账号与密码, 账号与密码都是你的 ISP 给你的,并且注意大小写(可以到 /etc/ppp/{chap,pap}-secrets 察看一下是否设定错误?)
4. 开始检查的步骤:
上面的步骤搞定就可以连上 Internet 了。如果担心设定方面有问题,可以透过手动设定 IP 的那个小节的五个步骤去检查看看, 指令分别是:
```
[root@www ~]# ifconfig
[root@www ~]# route -n
[root@www ~]# ping GW的IP
[root@www ~]# dig www.google.com
[root@www ~]# hostname
```
比较特殊的是,因为 ADSL 拨接是透过点对点 (ppp) 协议,所谓的点对点,就是你的 ppp0 直接连接到 ISP 的某个点 (IP) , 所以,理论上,ppp0 是个独立的 IP ,并没有子网!因此,当你察看 ppp0 的网络参数时,他会变成这样:
```
[root@www ~]# ifconfig ppp0
ppp0 Link encap:Point-to-Point Protocol
inet addr:111.255.69.90 P-t-P:168.95.98.254 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1
RX packets:59 errors:0 dropped:0 overruns:0 frame:0
TX packets:59 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:3
RX bytes:7155 (6.9 KiB) TX bytes:8630 (8.4 KiB)
```
如上所示,那个 inet addr 就是你的 IP ,而 P-t-P 就是 Gateway 的意思啦!你也会看到, Mask 是 255.255.255.255 哩! 没有子网呦!要仔细看清楚哩!
5. 取消拨接功能 (Option)
如果你明明没有 ADSL 联机,但是却作了上面的动作,那么得要注意喔,因为每次重新启动网络都会花很多时间在侦测 ADSL 调制解调器上。所以啰,我们得要修改 ppp0 的配置文件才行。动作很简单,将 /etc/sysconfig/network-scripts/ifcfg-ppp0 内的 ONBOOT 改成 no, 然后进行:
```
[root@www ~]# vim /etc/sysconfig/network-scripts/ifcfg-ppp0
DEVICE=ppp0
ONBOOT=no
....(其他省略)....
[root@www ~]# chkconfig pppoe-server off
```
很快的,这样你就已经做好 ADSL 拨接上网的动作了!很快乐吧!但是不要忘记了,你的主机若还没有更新 (update) 系统,恐怕资安方面会有些问题哩!所以,赶紧往下两个章节读读去!
* * *
- 鸟哥的Linux私房菜:服务器架设篇 第三版
- 第一部份:架站前的进修专区
- 作者序
- 第一章、架设服务器前的准备工作
- 1.1 前言: Linux 有啥功能
- 1.2 基本架设服务器流程
- 1.3 自我评估是否已经具有架站的能力
- 1.4 本章习题
- 第二章、基础网络概念
- 2.1 网络是个什么玩意儿
- 2.2 TCP/IP 的链结层相关协议
- 2.3 TCP/IP 的网络层相关封包与数据
- 2.4 TCP/IP 的传输层相关封包与数据
- 2.5 连上 Internet 前的准备事项
- 2.6 重点回顾:
- 2.7 本章习题
- 2.8 参考数据与延伸阅读
- 第三章、局域网络架构简介
- 3.1 局域网络的联机
- 3.2 本书使用的内部联机网络参数与通讯协议
- 第四章、连上 Internet
- 4.1 Linux 连上 Internet 前的注意事项
- 4.2 连上 Internet 的设定方法
- 4.3 无线网络--以笔记本电脑为例
- 4.4 常见问题说明
- 4.5 重点回顾
- 4.6 本章习题
- 4.7 参考数据与延伸阅读
- 第五章、 Linux 常用网络指令
- 5.1 网络参数设定使用的指令
- 5.2 网络侦错与观察指令
- 5.3 远程联机指令与实时通讯软件
- 5.4 文字接口网页浏览
- 5.5 封包撷取功能
- 5.6 重点回顾
- 5.7 本章习题
- 5.8 参考数据与延伸阅读
- 第六章、 Linux 网络侦错
- 6.1 无法联机原因分析
- 6.2 处理流程
- 6.3 本章习题
- 6.4 参考数据与延伸阅读
- 第二部分:主机的简易资安防护措施
- 第七章、网络安全与主机基本防护:限制端口, 网络升级与 SELinux
- 7.1 网络封包联机进入主机的流程
- 7.2 网络自动升级软件
- 7.3 限制联机埠口 (port)
- 7.4 SELinux 管理原则
- 7.5 被攻击后的主机修复工作
- 7.6 重点回顾
- 7.7 课后练习
- 7.8 参考数据与延伸阅读
- 第八章、路由观念与路由器设定
- 8.1 路由
- 8.2 路由器架设
- 8.3 动态路由器架设:quagga (zebra + ripd)
- 8.4 特殊状况:路由器两边界面是同一个 IP 网段: ARP Proxy
- 8.5 重点回顾
- 8.6 本章习题
- 8.7 参考数据与延伸阅读
- 第九章、防火墙与 NAT 服务器
- 9.1 认识防火墙
- 9.2 TCP Wrappers
- 9.3 Linux 的封包过滤软件:iptables
- 9.4 单机防火墙的一个实例
- 9.5 NAT 服务器的设定
- 9.6 重点回顾
- 9.7 本章习题
- 9.8 参考数据与延伸阅读
- 第十章、申请合法的主机名
- 10.1 为何需要主机名
- 10.2 注册一个合法的主机名
- 10.3 重点回顾
- 10.4 本章习题
- 10.5 参考数据与延伸阅读
- 第三部分:局域网络内常见的服务器架设
- 第十一章、远程联机服务器SSH / XDMCP / VNC / RDP
- 11.1 远程联机服务器
- 11.2 文字接口联机服务器: SSH 服务器
- 11.3 最原始图形接口: Xdmcp 服务的启用
- 11.4 华丽的图形接口: VNC 服务器
- 11.5 仿真的远程桌面系统: XRDP 服务器
- 11.6 SSH 服务器的进阶应用
- 11.7 重点回顾
- 11.8 本章习题
- 11.9 参考数据与延伸阅读
- 第十二章、网络参数控管者: DHCP 服务器
- 12.1 DHCP 运作的原理
- 12.2 DHCP 服务器端的设定
- 12.3 DHCP 客户端的设定
- 12.4 DHCP 服务器端进阶观察与使用
- 12.5 重点回顾
- 12.6 本章习题
- 12.7 参考数据与延伸阅读
- 第十三章、文件服务器之一:NFS 服务器
- 13.1 NFS 的由来与其功能
- 13.2 NFS Server 端的设定
- 13.3 NFS 客户端的设定
- 13.4 案例演练
- 13.5 重点回顾
- 13.6 本章习题
- 13.7 参考数据与延伸阅读
- 第十四章、账号控管: NIS 服务器
- 14.1 NIS 的由来与功能
- 14.2 NIS Server 端的设定
- 14.3 NIS Client 端的设定
- 14.4 NIS 搭配 NFS 的设定在丛集计算机上的应用
- 14.5 重点回顾
- 14.6 本章习题
- 14.7 参考数据与延伸阅读
- 第十五章、时间服务器: NTP 服务器
- 15.1 关于时区与网络校时的通讯协议
- 15.2 NTP 服务器的安装与设定
- 15.3 客户端的时间更新方式
- 15.4 重点回顾
- 15.5 本章习题
- 15.6 参考数据与延伸阅读
- 第十六章、文件服务器之二: SAMBA 服务器
- 16.1 什么是 SAMBA
- 16.2 SAMBA 服务器的基础设定
- 16.3 Samba 客户端软件功能
- 16.4 以 PDC 服务器提供账号管理
- 16.5 服务器简单维护与管理
- 16.6 重点回顾
- 16.7 本章习题
- 16.8 参考数据与延伸阅读
- 第十七章、区网控制者: Proxy 服务器
- 17.1 什么是代理服务器 (Proxy)
- 17.2 Proxy 服务器的基础设定
- 17.3 客户端的使用与测试
- 17.4 服务器的其他应用设定
- 17.5 重点回顾
- 17.6 本章习题
- 17.7 参考数据与延伸阅读
- 第十八章、网络驱动器装置: iSCSI 服务器
- 18.1 网络文件系统还是网络驱动器
- 18.2 iSCSI target 的设定
- 18.3 iSCSI initiator 的设定
- 18.4 重点回顾
- 18.5 本章习题
- 18.6 参考数据与延伸阅读
- 第四部分:常见因特网服务器架设
- 第十九章、主机名控制者: DNS 服务器
- 19.1 什么是 DNS
- 19.2 Client 端的设定
- 19.3 DNS 服务器的软件、种类与 cache only DNS 服务器设定
- 19.4 DNS 服务器的详细设定
- 19.5 协同工作的 DNS: Slave DNS 及子域授权设定
- 19.6 DNS 服务器的进阶设定
- 19.7 重点回顾
- 19.8 本章习题
- 19.9 参考数据与延伸阅读
- 第二十章、WWW 伺服器
- 20.1 WWW 的簡史、資源以及伺服器軟體
- 20.2 WWW (LAMP) 伺服器基本設定
- 20.3 Apache 伺服器的進階設定
- 20.4 登錄檔分析以及 PHP 強化模組
- 20.5 建立連線加密網站 (https) 及防砍站腳本
- 20.6 重點回顧
- 20.7 本章習題
- 20.8 參考資料與延伸閱讀
- 第二十一章、文件服务器之三: FTP 服务器
- 21.1 FTP 的数据链路原理
- 21.2 vsftpd 服务器基础设定
- 21.3 客户端的图形接口 FTP 联机软件
- 21.4 让 vsftpd 增加 SSL 的加密功能
- 21.5 重点回顾
- 21.6 本章习题
- 21.7 参考数据与延伸阅读
- 第二十二章、邮件服务器: Postfix
- 22.1 邮件服务器的功能与运作原理
- 22.2 MTA 服务器: Postfix 基础设定
- 22.3 MRA 服务器: dovecot 设定
- 22.4 MUA 软件:客户端的收发信软件
- 22.5 邮件服务器的进阶设定
- 22.6 重点回顾
- 22.7 本章习题
- 22.8 参考数据与延伸阅读