⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 63.html

📁 著名的linux英雄站点的文档打包
💻 HTML
📖 第 1 页 / 共 4 页
字号:
在上面的示例中,可将网络名称 syroid-C1 用于脚本或任何命令行实用程序中来引用 192.168.1 这个 C 类网。<br>
<br>
/etc/sysconfig/network<br>
<br>
将 /etc/sysconfig/network(注意与 /etc/networks 文件不同,这个 network 是单数而不是复数)用于指定所期望的网络配置信息;在引导时,有几个脚本要使用它。该文件可以包含下列所示的一个或多个关键字/值对:<br>
NETWORKING=YES|NO -- YES 表示需要配置网络;NO 表示不需要配置网络。<br>
HOSTNAME=hostname — 主机的全限定域名;为与较老的程序兼容,这应该与在 /etc/hosts 中的主机项相匹配。<br>
GATEWAY=gw-ip — 网络网关的 IP 地址。<br>
GATEWAYDEV=gw-dev — 网关设备的名称(例如 eth0)。<br>
NISDOMAIN=dom-name — 表示 NIS 域,如果有的话。<br>
下面是 /etc/sysconfig/network 最小配置的示例:<br>
NETWORKING=yes<br>
HOSTNAME=phoenix.syroidmanor.com<br>
GATEWAY=192.168.1.1<br>
<br>
/etc/resolv.conf 和 /etc/rc.d/rc3.d/S10network<br>
<br>
/etc/resolv.conf 是网络用来确定主机解析的关键文件之一。在此可以标识最多三个名称服务器;如果列在第一位的服务器未对查询做出响应,则后面两个起到备用的作用。domain 项定义缺省域名。解析器(顺便提一下,该解析器不是一个单独的进程,而是由网络进程调用的例程库)将这里所列出的域名附加在任何不包含句点的主机查询上。<br>
# /etc/resolv.conf<br>
# domain name resolver config file<br>
domain syroidmanor.com<br>
<br>
nameserver 192.168.1.7<br>
nameserver 192.168.1.10<br>
nameserver 165.142.268.19<br>
在上面所显示的示例中,如果提交给解析器的查询是想要查询找主机 phoenix(注意,没有点),则将该域附加到这个请求之后,这会将该查询扩展为 phoenix.syroidmanor.com。若需要了解更多详细信息和可以使用的选项,请输入 man resolv.conf 。<br>
/etc/rc.d/rc3.d/S10network 是指向 /etc/rc.d/init.d/network 脚本的符号链接。当系统达到运行级别 3 时,它负责初始化所有已配置的网络接口。在这里我们不想花时间来详细讨论该文件后面的逻辑,因为该文件主要是调用本节中所提到的其它脚本和程序。但是,如果您对 S10network 中初始化各种网络组件和服务的顺序感兴趣的话,则可以使用 less /etc/rc.d/rc3.d/S10network 命令来仔细研读它。<br>
<br>
/etc/sysconfig/network-scripts/<br>
<br>
最后,通常可在 /etc/sysconfig/network-scripts/ 目录中查找到下列文件:<br>
/etc/sysconfig/network-scripts/ifup<br>
/etc/sysconfig/network-scripts/ifdown<br>
/etc/sysconfig/network-scripts/network-functions<br>
/etc/sysconfig/network-scripts/ifcfg-interface-name<br>
/etc/sysconfig/network-scripts/ifcfg-interface-name:clone-name<br>
/etc/sysconfig/network-scripts/chat-interface-name<br>
/etc/sysconfig/network-scripts/dip-interface-name<br>
/etc/sysconfig/network-scripts/ifup-post<br>
<br>
……/network-scripts/,第一部分<br>
/etc/sysconfig/network-scripts 中的 ifup 和 ifdown 项实际是分别指向 /sbin/ifup 和 /sbin/ifdown 的符号链接。这两个脚本是在该目录下唯一应该直接调用的脚本,并且它们按需要调用所有其它脚本。<br>
ifup 和 ifdown 通常只带一个参数:设备名(例如 eth0)。系统在引导过程期间用参数“boot”调用它们,以便于不激活没有被配置成在系统启动时初始化的设备(请参阅下面关于 interface-name 描述中的 ONBOOT=no)。<br>
network-function 不是公共文件。它包含这个目录中的几个脚本所需的函数。具体地说,它包含了用于处理替代接口配置的大多数代码。<br>
<br>
……/network-scripts/,第二部分<br>
<br>
配置文件 ifcfg-interface-name 和 ifcfg-interface-name:clone-name 包含了初始化接口所需的大部分详细信息。第一个文件定义接口,而第二个文件仅包含与“别名”(或替代)接口相关的部分定义。例如,网络地址或许不同,但其它可能会一样。<br>
在 ifcfg 文件中定义的各项目取决于接口类型;下列值很常见:<br>
<br>
DEVICE=name ,其中 name 是物理设备名<br>
IPADDR=addr ,其中 addr 是 IP 地址<br>
NETMASK=mask ,其中 mask 是网络掩码值<br>
NETWORK=addr ,其中 addr 是网络地址<br>
BROADCAST=addr ,其中 addr 是广播地址<br>
GATEWAY=addr ,其中 addr 是网关地址<br>
ONBOOT=answer ,其中 answer 是“yes”(引导时激活设备)或“no”<br>
USERCTL=answer ,其中 answer 是“yes”(非 root 用户可以控制该设备)或“no”<br>
BOOTPROTO=proto ,其中 proto 取下列值之一:“none”(引导时不使用协议)“bootp”(使用 BOOTP 协议)或“dhcp”(使用 DHCP 协议)<br>
<br>
此外,下列值对所有的 SLIP(串行线 IP)文件是公共的:<br>
<br>
PERSIST=answer ,其中 answer 是“yes”(即使调制解调器已经挂断连接,也保持设备处于激活状态)或“no”(不保持激活状态)<br>
MODEMPORT=port ,其中 port 是调制解调器端口的设备名(例如,/dev/modem)<br>
LINESPEED=baud ,其中 baud 是调制解调器的线路速度<br>
DEFABORT=answer ,其中 answer 是“yes”(当创建/编辑该接口的脚本时,插入缺省的异常终止字符串)或“no”(不插入缺省的异常终止字符串)<br>
<br>
<br>
……/network-scripts/,第三部分<br>
<br>
chat-interface-name 文件是用于 SLIP 连接的交谈脚本(chat script)。它的功能是启动 SLIP 连接。对于 SLIP 设备,DIP 脚本是根据这个交谈脚本编写的。<br>
chat-interface-name 是只写脚本,它由程序 netcfg 根据交谈脚本创建的。不要修改该文件。<br>
当初始化任何网络设备(除了 SLIP 设备)时,调用 /etc/sysconfig/network-scripts/ifup-post。它调用 /etc/sysconfig/network-scripts/ifup-routes 以启动依赖于该设备的静态路由,它还启动为该设备配置的任何别名,并且,如果还没有设置主机名,则设置主机名 — 这样找到与该设备 IP 地址匹配的主机名。最后,ifup-post 给请求通知网络事件的任何程序发送信号(SIGIO)。<br>
<br>
配置网络接口和路由<br>
<br>
ifconfig 程序<br>
ifconfig 命令设置、检查或监控网络接口的配置值。它还可以用于设置接口的“状态”— 即“up”(启动)或“down”(关闭)。一个对 ifconfig 简单的调用是:<br>
ifconfig interface-name ip-address up|down<br>
这会激活指定的接口并将所提供的 IP 地址分配给它。<br>
ifconfig 有许多个可用的选项(metric、mtu 以及 pointtopoint 等等;有关详细信息,请参阅帮助页)用于显式地设置唯一的接口参数,但一般来说,提供接口名称(例如, eth0)、IP 地址和网络掩码就足够了。例如:<br>
ifconfig eth0 192.168.1.5 netmask 255.255.255.0 up<br>
分配给接口 eth0 的 IP 为 192.168.1.5,网络掩码为 255.255.255.0 并“启动该接口”或将其初始化。类似的,若将接口“关闭”,则输入 ifconfig eth0 down ;不需要指定 IP 和网络掩码。<br>
<br>
使用 ifconfig 检查接口<br>
<br>
运行不带参数的 ifconfig 会使该程序显示所有网络接口的状态。若要检查特定接口的状态,则在 ifconfig 后附加这个接口的名称。例如:<br>
[tom@phoenix tom]$ /sbin/ifconfig eth0<br>
eth0 Link encap:Ethernet HWaddr 00:10:5A:00:87:22<br>
inet addr:192.168.1.20 Bcast:192.168.1.255 Mask:255.255.255.0<br>
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br>
RX packets:9625272 errors:0 dropped:0 overruns:0 frame:0<br>
TX packets:6997276 errors:0 dropped:0 overruns:0 carrier:0<br>
collisions:0 txqueuelen:100<br>
Interrupt:19 Base address:0xc800<br>
以上输出显示 MAC 地址(Hwaddr)、所分配的 IP 地址(inet addr)、广播地址(Bcast)和网络掩码(Mask)。另外可以看出该接口处于 UP 状态,其 MTU 为 1500 并且 Metric 为 1。接下来的两行给出有关接收到(RX)和已发送的(TX)信息包数,以及错误、丢弃和溢出信息包数的统计。最后两行显示冲突信息包的数目、发送队列大小(txqueuelen)和 IRQ 以及这块卡的基址。<br>
<br>
配置路由<br>
<br>
让我们通过查看尚未配置网关的网络接口来看一下如何配置路由。正如您所见,使用不带参数的 route 命令将显示内核路由表。<br>
[root@phoenix tom]# /sbin/route<br>
Kernel IP routing table<br>
Destination Gateway Genmask Flags Metric Ref Use Iface<br>
127.0.0.0 127.0.0.1 255.0.0.0 U 0 0 0 lo<br>
192.168.1.0 192.168.1.5 255.255.255.0 U 0 0 0 eth0<br>
<br>
第一项是到 localhost 的回送路由,它是在配置 lo 时自动创建的。第二项是通过接口 eth0 到网络 192.168.1.0 的路由。地址 192.168.1.5 不是远程网关地址。它是分配给 phoenix eth0 的地址。<br>
注意每项的标志。它们都设置了 U(启动)标志,这表示准备使用它们,但它们都未设置 G(网关)标志。不设置 G 标志是因为这两个路由都是通过本地接口,而不是通过外部网关的直接路由。<br>
上述示例仅包含一个网络路由 192.168.1.0。因而 phoenix 仅可以与位于 192.168.1.0 网络中的主机进行通信。<br>
<br>
添加静态路由<br>
<br>
最小的路由表仅允许在同一网络中的主机互相通信。要与远程主机通信,必须将通过外部网关的路由添加到路由表中。达到该目的的一种方法是通过使用 /sbin/route 命令。拿上页中的例子来说,我们现在就将路由 192.168.1.1 添加到网络配置中。<br>
[root@phoenix tom]# /sbin/route add default 192.168.1.1 1<br>
在上面这个示例中,route 命令后的第一个参数是关键字 add 。在 route 命令上的第一个关键字要么是 add 要么是 del (删除路由)。下一个值是目的地地址,它是通过该路由到达的地址。如果关键字 default 用于目的地地址,则创建缺省路由。只要没有到目的地的特定路由时,就使用缺省路由;通常,这就是您在路由表中唯一需要的项。如果网络中只有一个网关,则使用缺省路由引导所有要到远程网络的数据流量通过那个网关。<br>
这个命令行的下一个参数是网关地址。该地址必须是直接连接本机所在网络的网关地址。在到远程目的地的网络路径中,TCP/IP 路由要指定下一跳(next-hop)。这个下一中继必须是本机可直接访问的;因而,它必须是在直接连接在本机所在的网络中。<br>
注:因为大多数的路由都是在系统启动过程早期时添加的,所以建议用数字的 IP 地址替代主机名。这样做就可以确保路由配置不依赖于名称服务器的状态。而且要确保总是使用完整的数字地址(共 4 个字节);如果不用完整的 IP 地址,则路由只能猜想部分 IP 地址,这样可能会导致不正确的配置。<br>
route 命令中,最后一个参数是数字 1,称之为路由度量(routing metric)。当删除路由时是不需要此 metric 参数的,但是在添加路由时许多系统都需要它。尽管需要度量,route 仅使用它来确定路由是通过直接连接的接口还是通过外部的网关。如果 metric 是 0,建立的这条路由是通过本机接口且不设置 G 标志;如果 metric 值比 0 大,则建立的这条路由带 G 标志且网关地址被认为是外部的。静态路由不使用其它 metric 值。需要真正用到多个 metric 值的是动态路由。<br>
要显示新的路由表,输入 /sbin/route 或使用 netstat -rn 命令(我们将再下一节讨论该命令):<br>
[root@phoenix tom]# netstat -rn<br>
Kernel IP routing table<br>
Destination Gateway Genmask Flags MSS Window irtt Iface<br>
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0<br>
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo<br>
0.0.0.0 192.168.1.1 0.0.0.0 UG 0 0 0 eth0<br>
最后做一个测试来证明一切都如同我们讲到的那样运行,ping 另一个网络上的主机;应该可以接收到响应。如果没有接收到响应,则重新检查您的配置。<br>
要熟悉 route 其它的选项和参数,请输入 man route 。<br>
<br>
netstat 程序<br>
<br>
如果管理任意规模的 TCP/IP 网络,则 netstat 程序是一个相当有价值的工具。它可以显示内核路由表,活动网络连接的状态和每个已安装网络接口的一些有用的统计信息。<br>
象大多数 Linux 管理命令行程序一样,netstat 可以通过其后面的附加选项或标志来选择所显示信息的细节数量和/或信息的范围。一些常用选项有:<br>
-a — 显示所有连接的信息,包括那些正在侦听的<br>
-i — 显示所有已配置网络设备的统计信息<br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -