📄 0130internet_connect.htm
字号:
[root@linux ~]# <span class=term_command>/etc/init.d/network restart</span>
<span class=term_say># 针对这部主机的所有网路介面 (包含 lo) 与通讯闸进行重新启动,
# 所以网路会停顿再开喔!</span>
</pre></td></tr></table>
就样就能够启动网路卡了!再来赶紧测试观察看看,我们可以直接下达 ifconfig 以及使用
ping 来检查看看喔!<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>ifconfig eth0</span>
eth0 Link encap:Ethernet HWaddr 00:40:D0:13:C3:46
<span class=term_write>inet addr:192.168.1.13 Bcast:192.168.1.255 Mask:255.255.255.0</span>
inet6 addr: fe80::240:d0ff:fe13:c346/64 Scope:Link
UP BROADCAST RUNNING MULTICAST <span class=term_write>MTU:1500</span> Metric:1
RX packets:229458 errors:16 dropped:0 overruns:0 frame:0
TX packets:117415 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:345006035 (329.0 MiB) TX bytes:7177543 (6.8 MiB)
Interrupt:5 Base address:0x3e00
<span class=term_say># 记得啊!有出现上头那个 IP 的资料才是正确的启动;
# 另外,也注意一下那个 MTU 的数值呐! ^_^</span>
[root@linux ~]# <span class=term_command>ping -c 3 192.168.1.2</span>
PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.
64 bytes from 192.168.1.2: icmp_seq=0 <span class=term_write>ttl=64 time=0.216 ms</span>
64 bytes from 192.168.1.2: icmp_seq=1 <span class=term_write>ttl=64 time=0.227 ms</span>
64 bytes from 192.168.1.2: icmp_seq=2 <span class=term_write>ttl=64 time=0.222 ms</span>
--- 192.168.1.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.216/0.221/0.227/0.017 ms, pipe 2
<span class=term_say># 注意啊!有出现 ttl 才是正确的回应!如果出现『 Destination Host Unreachable 』
# 表示没有成功的连线到您的 GATEWAY 那表示出问题啦!赶紧检查有无设定错误。</span>
</pre></td></tr></table>
一般来说,到此为止您的 IP 设定已经成功啦!不过,偶而您会发现无法找到 yahoo.com.tw 的 IP 那!
那表示您必须要进行底下的工作!<br /><br />
<a name=resolv></a><li><span class=text_import1>设定 DNS 的 IP∶ /etc/resolv.conf</span><br />
这个档案重要啦!他会影响到您是否可以查询到主机名称与 IP 的对应喔!
通常如下的设定就 OK 了!<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>vi /etc/resolv.conf</span>
<span class=term_write>nameserver 168.95.1.1
nameserver 139.175.10.20</span>
</pre></td></tr></table>
我们以中华电信与 SeedNet 在南部的 DNS 主机之 IP 作为设定的方式!
请注意一下,如果您不知道您的最接近的 DNS 主机的 IP ,那么直接输入 nameserver 168.95.1.1
这个中华电信的 DNS 主机即可!不过如果您公司内部有设定防止 DNS 的要求封包的防火墙规则时,
那么您就得要请教贵公司的网管单位告知您的 DNS IP 设定啦!然后赶紧测试看看∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>nslookup tw.yahoo.com</span>
Server: 168.95.1.1
Address: 168.95.1.1#53
Non-authoritative answer:
tw.yahoo.com canonical name = tw.yahoo-ap1.akadns.net.
Name: tw.yahoo-ap1.akadns.net
Address: <span class=term_write>202.43.195.52</span>
</pre></td></tr></table>
仔细观察,得要出现有 IP 的字样,才算是设定成功喔!<br /><br />
</ol>
上面这几个步骤需要一步一步来,如果前面失败,后面就不可能成功的!
所以请不要尚未启动网路前,就使用 nslookup 去追查 IP ,那是『查不到的』啦!
注意流程啊!得要网路好了,才能够处理其他在网路上面的 DNS 资料,您说是吧! ^_^<br /><br />
</div>
<hr /><a NAME="connect_auto"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">可自动取得 IP 的环境</span><br />
<div class=block2>
可自动取得 IP 的环境是怎么回事啊?不是很简单吗?当您在 IP 分享器后头的主机在设定时,
不是都会选择『自动取得 IP 』吗?那就是可自动取得 IP 的环境啦!那么这个自动取得是怎么回事啊?
也不难了解啦,其实就是『有一部主机提供 DHCP 服务给整个网域内的电脑』就是了!
例如 IP 分享器就可能是一部 DHCP 主机。那么 DHCP 是啥?
他是∶Dynamic Host Configuration Protocol 的简写,顾名思义,
他可以『动态的调整主机的网路参数』的意思。详细的
<a href="0340dhcp.php">DHCP</a> 功能我们会在后面的章节说明的。<br /><br />
好了,那么这个方法适合哪些连线的方式呢?大致有这些∶<br />
<ul>
<li><span class=text_import2>Cable Modem</span>∶就是使用电视缆线进行网路回路连线的方式啊!
这个方式属于媒体共享式,在社区内比较常见;</li>
<li><span class=text_import2>ADSL 多 IP 的 DHCP 制</span>∶就鸟哥所知, SeedNet 有推出一种专案,
可以让 ADSL 用户以 DHCP 的方式来自动取得 IP ,不需要拨接。那使用的也是这种方法!
<li><span class=text_import2>IP 分享器或 NAT 有架设 DHCP 服务时</span>∶当您的主机位于 IP
分享器的后端,或者是您的 LAN 当中有 NAT 主机且 NAT 主机有架设 DHCP 服务时,
那取得 IP 的方法也是这样喔!</li>
</ul>
反正可以自动取得 IP 的条件下,大多数都是使用底下的方法啦!
请先参考前一小节<a href="#connect_fix_IP">固定 IP 的连线方法</a>设定好步骤 1~4 的所有项目,
其中第2个步骤需要改成底下的样子∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>vi /etc/sysconfig/network-scripts/ifcfg-eth0</span>
<span class=term_write>DEVICE=eth0
ONBOOT=yes
BOOTPROTO=dhcp</span>
</pre></td></tr></table>
没盖你喔!只要这三个项目即可,其他的都给他注解 (#) 掉!避免互相干扰!然后给他重新启动网路∶
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>/etc/init.d/network restart</span>
</pre></td></tr></table>
我们区域网路内的 IP 分享器或 DHCP 主机,就会立刻帮您的 Linux 主机做好网路参数的规划,
包括 IP 参数与 GATEWAY 等,就通通设定妥当啦!很方便也很简单吧!<br />
<div style="padding: 10 0 10 0 ;" align="right"><table width="90%"><tr><td><b>Tips:</b><br /><span style="font-style: italic; color : darkgreen"> 有些版本会主动的修改 /etc/resolv.conf 这个档案,所以您必须要随时注意一下这个档案的内容,
另外, CentOS 会主动的建立一个说明文件资料在 /etc/dhclient-eth0.conf ,您也可以自行瞧一瞧去!
</span></td><td><img src="../images/vbird_face.gif" /></td></tr></table></div> </div>
<hr /><a NAME="connect_adsl"></a><img src="../images/penguin-s.gif" alt="小标题的图示" height="23" width="16" align="middle" /><span class="text_h2">ADSL 拨接上网</span><br />
<div class=block2>
终于来到台湾最热门的 ADSL 拨接上网的介绍啦!来谈一谈如何在 Linux 上拨接上网吧!
要拨接上网时,可以使用 rp-pppoe 这套软体来帮忙,所以,您必须要确认你的 Linux distributions
上面已经存在这个玩意儿了!(注∶ SuSE 使用的是其他的软体,您应该要自行使用 yast 来设定即可。)
CentOS 本身就含有 rp-pppoe ,请使用原版光碟,或者是使用 yum 来进行安装吧!<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>rpm -q rp-pppoe</span>
rp-pppoe-3.5-22 <span class=term_say><==您瞧瞧!确实有安装喔!</span>
</pre></td></tr></table>
当然,很多 distributions 都已经将拨接这个动作归类到图形介面里面去了,
所以可能没有提供 rp-pppoe 这个咚咚,没关系,您可以到底下的网站去取得的∶<br />
<ul><li><a href="http://www.roaringpenguin.com/pppoe/"
target="_blank">http://www.roaringpenguin.com/pppoe/</a></li>
<li><a href="http://freshmeat.net/projects/rp-pppoe/"
target="_blank">http://freshmeat.net/projects/rp-pppoe/</a></ul>
然后再自行手动安装即可。如何安装的过程鸟哥在这里就不谈了,请自行前往基础篇的<a
href="../linux_basic/0520source_code_and_tarball.php">原始码与 Tarball</a>查阅相关资料吧。
另外请注意,虽然整个连线是由主机的乙太网路卡连接到 ADSL 数据机上,然后再透过电话线路连线到
ISP 的机房去,最后在主机上以 rp-pppoe 拨接达成连线。但是 <span class=text_import2>rp-pppoe
使用的是 Point to Point (ppp) 的点对点协定所产生的网路介面,因此当您顺利的拨接成功之后,
会多产生一个实体网路介面『 ppp0 』</span>喔!
而由于 ppp0 是架构在乙太网路上的,所以 eth0 也不能关掉啊!注意注意!因此,拨接成功后就会有∶<br />
<ul><span class=text_import2>
<li>内部回圈测试用的lo介面;
<li>网路卡 eth0 这个介面;
<li>拨接之后产生的经由 ISP 对外连接的 ppp0 介面。</span></ul>
<span class=text_import2>上头这三个介面是完全独立的,互不相干</span>,所以关于 eth0 您可以这样思考∶<br />
<ul>
<li><span class=text_import1>这张网路卡 (假设是 eth0) 有接内部网路(LAN)</span>∶<br />
如果是这样的话,那么您的 IP 设定参数∶ /etc/sysconfig/network-scripts/ifcfg-eth0 应该要给予一个私有
IP 以使内部的 LAN 也可以透过 eth0 来进行连线啊!所以我会这样设定∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>vi /etc/sysconfig/network-scripts/ifcfg-eth0</span>
<span class=term_write>DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.1.255
IPADDR=192.168.1.13
NETMASK=255.255.255.0
NETWORK=192.168.1.0
ONBOOT=yes</span>
</pre></td></tr></table>
并请记得一件事情,那就是∶『<span class=text_import2>千万不要有 GATEWAY 的设定!</span>』,
否则 ppp0 拨接成功后又会产生另一个 default gateway ,就会造成问题了!<br /><br /></li>
<li><span class=text_import1>没有内部网域</span>∶<br />
如果这部 Linux 主机是直接连接到 ADSL 上头,并没有任何内部主机与其连线,
也就是说,您的 eth0 有没有 IP 都没有关系时,那么上面的设定当中的那个『 ONBOOT=yes 』
直接改成『 ONBOOT=no 』就好了!</li></ul>
至于其他的档案请参考前两小节<a href="#connect_fix_IP">固定 IP 的连线方法</a>上面的步骤1, 3, 4
设定好!步骤 2 则依照刚刚提到的是否有接 LAN 的情况来设定,然后就可以开始准备拨接了!
当然啦,拨接之前,请确认您的 ADSL 数据机 (小乌龟) 已经与主机连线妥当,
也取得帐号与密码,也安装好了 rp-pppoe ,然后就来处理吧!<br />
<ol>
<li><span class=text_import1>关闭接在 ADSL 数据机上面的那张网卡</span><br />
说实在的,鸟哥比较建议将内外网域分的清清楚楚比较好,所以,通常我都是主机上面接两块网路卡,
一张对内一张对外,对外的那张网卡在拨接前先关闭,虽然没有关闭也不打紧,
不过曾有网友回报,如果不关闭时,有时候(机率很低)会无法拨接成功!假设连接到 ADSL
的网卡是 eth0 ,那么关闭很简单吧?<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>ifdown eth0</span>
[root@linux ~]# <span class=term_command>ifconfig eth0 down</span>
</pre></td></tr></table>
这样就可以啦!<br /><br />
<li><span class=text_import1>设定帐号与密码之连线设定</span><br />
假设 rp-pppoe 设定好了,如果您的版本没有 rp-pppoe 的话,请自行安装。
关于安装的方法可以参考本章最后的参考资料。然后就开始如下的设定∶<br />
<table class="term"><tr><td class="term"><pre>
[root@linux ~]# <span class=term_command>adsl-setup</span>
Welcome to the ADSL client setup. First, I will run some checks on
your system to make sure the PPPoE client is installed properly...
LOGIN NAME
Enter your Login Name (default root): <span class=term_command>T1234567</span>
<span class=term_say># 注意啊!这个帐号名称是 ISP 给的,其中如果是 SeedNet ,输入如上,
# 如果是 Hinet 的话,就得要输入 username@hinet.com.tw ,后面的主机名也要写。</span>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -