LINUX下的网络配置
路由表和静态路由
route 命令的输出项说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:
U 路由是活动的
H 目标是一个主机
G 路由指向网关
R 恢复动态路由产生的表项
D 由路由的后台程序动态地安装
M 由路由的后台程序修改
! 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 该路由表项对应的输出接口
3 种路由类型
主机路由
主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H
网络路由
网络路由是代表主机可以到达的网络。网络路由的Flags字段为N
默认路由
当主机不能在路由表中查找到目标主机的IP地址或网络路由时,数据包就被发送到默认路由(默认网关)上。默认路由的Flags字段为G
route 命令
设置和查看路由表都可以用 route 命令,设置内核路由表的命令格式是:
# route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
其中:
add : 添加一条路由规则
de l : 删除一条路由规则
-ne t : 目的地址是一个网络
-host : 目的地址是一个主机
targe t : 目的网络或主机
ne tm ask : 目的地址的网络掩码
gw : 路由数据包通过的网关
de v : 为路由指定的网络接口
设置包转发
在 CentO S 中默认的内核配置已经包含了路由功能,但默认并没有在系统启动时启用此功能。开启 Linux 的路由功可以通过调整内核的网络参数来实现。要配置和调整内核参数可以使用 sysctl 命令。例如:要开启 Linux 内核的数据包转发功能可以使用如下的命令。
# sysctl -w net.ipv4.ip_forward=1
这样设置之后,当前系统就能实现包转发,但下次启动计算机时将失效。为了使在下次启动计算机时仍然有效,需要将下面的行写入配置文件/etc/sysctl.conf。
# vi /etc/sysctl.conf
net.ipv4.ip_forward = 1
用户还可以使用如下的命令查看当前系统是否支持包转发。
#sysctl net.ipv4.ip_forward
使用 ifconfig 命令配置以太网
可以使用 ifconfig 命令来配置并查看网络接口的配置情况。ifconfig命令格式是:
# ifconfig <网络接口> <IP地址> [<netmask 子网掩码> <broadcast 广播地址>]
当IP地址使用标准A、B、C类地址时,广播地址和子网掩码可以省略,系统会自动判断广播地址和子网掩码的值并进行设置。
ifconfig 命令显示信息说明:
Link encap 网络接口类型,如以太网或PPP等
HWadrr 网卡的 Mac 地址。每一块网卡都有自己的编号,用于在以太网协议下定位网络主机
inet addr 此接口对应的 IP 地址 ,网络接口状态标志
UP 网络接口被启用
RUNNING 接口正在运行
BROADCAST 支持广播 IP 寻址方式
MULTICAST 支持多播 IP 寻址方式
LOOPBACK 表示本地回环设备接口
MTU Message transfer unit, 此接口所能传输的最大 frame 数
Metric 此接口的 Metric 数,用于引导路由决策
Bcast 广播地址,通常是网络的最后一个 IP 地址
Mask 子网掩码
RX packets 接收的封包总数、错误数、遗失数和溢流数
TX packets 发送的封包总数、错误数、遗失数和溢流数
collisions 冲突数(当多个 NIC 同时使用网线传输数据时会产生冲突)
txqueuelen 指出网络接口可以存储的数据包的个数
RX bytes 与 RX packets 类似,表示接收的具体字节数
TX bytes 与 TX packets 类似,表示发送的具体字节数
Interrupt 网卡使用的中断(IRQ)
Base address 网卡使用的内存地址
直接修改配置文件配置以太网
CentOS 在 /etc/sysconfig/network -scripts 目录下存储网络接口配置文件。每个网络接口有各自的配置文件, 配置文件以 ifcfg- 为前缀后接网络接口名.
cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0 # 设备名
BROADCAST=192.168.0.255 # 广播地址
HWADDR=00:0c:29:f1:15:8f # MAC 地址
IPADDR=192.168.0.100 # IP 地址
NETMASK=255.255.255.0 # 子网掩码
NETWORK=192.168.0.0 # 网络地址
ONBOOT=yes # 在系统启动时启用该接口
TYPE=Ethernet # 网络接口类型GATEWAY=192.168.0.1 # 网关地址
修改 ”Hosts表” 实现静态 DNS 解析
要实现域名解析,即可以使用 DNS 服务器,也可以使用 Hosts表。 CentOS 的Hosts表配置文件是 /etc/hosts。
设置 DNS 客户
DNS 客户端配置文件为/etc/resolv.conf,使用如下命令添加 DNS 服务器解析的指向。
# echo “nameverver 202.106.195.68″ > /etc/resolv.conf
?
永久修改主机名
编辑 /etc/sysconfig/network , 设置主机名,网关,域名。