redhat 网络和路由配置

(ZZ:http://blog.csdn.net/changyanmanman/article/details/7293842

[redhat] command not found su || su -

最近刚开始学习rhel,在普通帐户下输入某些超级命令时明明存在该命令(如:ifconfig、 useradd),却提示“command not found” 一开始很不解,初学者嘛 ^_^ 后来查了资料才发现:

原来超级用户使用的命令大多是在/sbin里面,一般用户使用的命令一般是在/bin里面,而/bin里面没有这些命令,故“command not found”

-----------分---隔---线-------------------
而用 su 命令切换到root执行时还是有这样的提示,郁闷...
呵呵,原来:

使用su虽然切换到了root,但是环境变量并没有一起跟着变过来,如果使用 su - ,环境变量才会一起跟着变过来。所以用 su - 来切换到root才能执行那些超级命令喔

呼呼~~好有意思啊,对吧?^_^ go on

 

redhat网络配置:

先看几个常用的命令吧:

$/sbin/ifconfig  ——显示ifconfig命令查看网络接口的信息。

#ifconfig eth0 ——显示指定网路接口eth0 的信息。

#ifconfig -a ——显示所有接口的信息。

——————————————————————————————————

$/sbin/route  ——显示当前主机路由表的信息。

#route del default gw 211.87.147.254  ——临时删除默认网关211.87.147.254 
#route add default gw 192.168.0.1  ——临时添加默认网关192.168.0.1
#route add -net 192.168.1.0/24 gw 192.168.0.254 ——临时添加一条静态路由
 
  /**本文中提及临时操作的地方,即主机重启后该操作将失效,如果希望每次系统重启后自动添加静态路由条目,则可以将该语句写入/etc/rc.d/rc.local中。**/

—————————————————————————————————————

   1、#service network start //启动网络服务
 
  2、#service network stop //停止网络服务
 
  3、#service network restart //重启网络服务
 
  4、#service network status //查看网络服务状态


 
  /**在RH中可以通过service命令来管理大多数服务的启动、停止、重启以及查看其工作状态等**/
 
  十一、#chkconfig ——list | grep network //查看某服务的自动启动级别
 
  1、#chkconfig ——level 35 network off //设置在级别35不自动启动某服务
 
  2、#chkconfig ——level 3 network on //设置在级别3自动启动某服务
 
  十二、ntsysv //通过向导在字符界面下修改服务的自启动选项

 

网络设置里的文件配置:

 

在 Linux 系统中,TCP/IP 网络是通过若干个文本文件进行配置的,需要编辑这些文件来完成联网工作。在Redhat linux刚安装好后可以通过图形化界面来配置,以下介绍通过命令行配置网络
用cat命令查看默认安装后关于网络配置的文件信息


1.cat   /etc/sysconfig/network

#vi /etc/sysconfig/network //通过配置文件修改主机名
 
  NETWORKING=yes
 
  HOSTNAME=localhost.localdomain //修改该值作为主机名,如:rhel.lpwr.net
 
  //该配置修改后,要重启系统方能生效


2.cat   /etc/resolv.conf

 
 #vi /etc/resolv.conf //指定当前主机的DNS服务器,最多可指定三个
 
  search lpwr.net //设置当前主机的默认查找域
 
  nameserver 192.168.0.100 //指定首选DNS服务器
 
  nameserver 172.16.254.2
 
  nameserver 202.106.0.20

 

3.cat   /etc/sysconfig/network-scripts/ifcfg-ethN (eth0为默认的,需要根据自己的情况而定)

 #vi /etc/sysconfig/network-scripts/eth0 //编辑指定网络接口配置文件
 
  DEVICE=eth0 //指定接口名称
 
  ONBOOT=yes //系统启动时加载
 
  BOOTPROTO=static //IP地址静态配置,若该值为“dhcp”则为动态获得
 
  IPADDR=192.168.0.1 //设置IP地址
 
  NETMASK=255.255.255.0 //设置子网掩码
 
  GATEWAY=192.168.0.254 //设置默认网关
 
  /**注意:设置之后必须要重启network服务或者重启接口(#ifdown eth0;ifup eth0),才能生效。**/
 
 
  十五、#vi /etc/hosts //设置本地DNS解析文件
 
  127.0.0.1 localhost.localdomain localhost //该行强烈建议保留
 
  192.168.0.1 rhel.lpwr.net rhel //必须有三个字段:IP、FQDN、HOSTNAME
 
  

——————————————————————————————————————

 

使用下面的 route 命令可以查看 Linux 内核路由表

# route
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.0.0     *               255.255.255.0   U     0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth0
default         192.168.0.1     0.0.0.0         UG    0      0        0 eth0

route 命令的输出项说明

输出项说明
Destination 目标网段或者主机
Gateway 网关地址,”*” 表示目标是本主机所属的网络,不需要路由
Genmask 网络掩码
Flags 标记。一些可能的标记如下:
  U — 路由是活动的
  H — 目标是一个主机
  G — 路由指向网关
  R — 恢复动态路由产生的表项
  D — 由路由的后台程序动态地安装
  M — 由路由的后台程序修改
  ! — 拒绝路由
Metric 路由距离,到达指定网络所需的中转数(linux 内核中没有使用)
Ref 路由项引用次数(linux 内核中没有使用)
Use 此路由项被路由软件查找的次数
Iface 路由表项对应的输出接口

3 种路由类型

 

主机路由

主机路由是路由选择表中指向单个IP地址或主机名的路由记录。主机路由的Flags字段为H。例如,在下面的示例中,本地主机通过IP地址192.168.1.1的路由器到达IP地址为10.0.0.10的主机。

Destination    Gateway       Genmask        Flags     Metric    Ref    Use    Iface
-----------    -------     -------            -----     ------    ---    ---    -----
10.0.0.10     192.168.1.1    255.255.255.255   UH       0    0      0    eth0

网络路由

网络路由是代表主机可以到达的网络。网络路由的Flags字段为N。例如,在下面的示例中,本地主机将发送到网络192.19.12的数据包转发到IP地址为192.168.1.1的路由器。

Destination    Gateway       Genmask      Flags    Metric    Ref     Use    Iface
-----------    -------     -------         -----    -----   ---    ---    -----
192.19.12     192.168.1.1    255.255.255.0      UN      0       0     0    eth0

默认路由

当主机不能在路由表中查找到目标主机的IP地址或网络路由时,数据包就被发送到默认路由(默认网关)上。默认路由的Flags字段为G。例如,在下面的示例中,默认路由是IP地址为192.168.1.1的路由器。

Destination    Gateway       Genmask    Flags     Metric    Ref    Use    Iface
-----------    -------     ------- -----      ------    ---    ---    -----
default       192.168.1.1     0.0.0.0    UG       0        0     0    eth0

配置静态路由

 

route 命令

设置和查看路由表都可以用 route 命令,设置内核路由表的命令格式是:

# route  [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]

其中:

  • add : 添加一条路由规则
  • del : 删除一条路由规则
  • -net : 目的地址是一个网络
  • -host : 目的地址是一个主机
  • target : 目的网络或主机
  • netmask : 目的地址的网络掩码
  • gw : 路由数据包通过的网关
  • dev : 为路由指定的网络接口

route 命令使用举例

添加到主机的路由

# route add -host 192.168.1.2 dev eth0:0
# route add -host 10.20.30.148 gw 10.20.30.40

添加到网络的路由

# route add -net 10.20.30.40 netmask 255.255.255.248 eth0
# route add -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route add -net 192.168.1.0/24 eth1

添加默认路由

# route add default gw 192.168.1.1

删除路由

# route del -host 192.168.1.2 dev eth0:0
# route del -host 10.20.30.148 gw 10.20.30.40
# route del -net 10.20.30.40 netmask 255.255.255.248 eth0
# route del -net 10.20.30.48 netmask 255.255.255.248 gw 10.20.30.41
# route del -net 192.168.1.0/24 eth1
# route del default gw 192.168.1.1

设置包转发

在 CentOS 中默认的内核配置已经包含了路由功能,但默认并没有在系统启动时启用此功能。开启 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
posted @ 2013-04-02 10:48  菜鸟飞  阅读(...)  评论(...编辑  收藏