在# /usr/sbin/route add 192.9.201.0 gateway后加入上面的临时路由行(示例如下):route add default 192.168.3.254;
静态路由静态路由是在路由设备启动时通过已加载的配置文件手动向设备的路由表中输入路由的过程。也可以由手动配置路由的网络管理员来输入这些路由。静态路由是路由的最简单形式,它是一个手动过程。
静态路由意味着在设计时要指定远程资源的位置。对特定资源的请求始终会被路由到同一个区域。通常,当使用静态路由时,会在安装的资源定义中指定资源的位置。
示例方案
一个位于私有网络(IP - 192.168.10.101)的虚拟 I/O 服务器
一台 IBM AIX 服务器有两个网卡:一个在私有网络上,连接到 VIOS;另一个在公共网络上。(私有网络 IP - 192.168.10.32 和公共网络 IP - 9.3.129.14)
公共网络 IP(公共网络 IP - 9.3.129.20/21/22/23)上的 AIX 客户端
图 1. 示例方案
在此场景中,需要通过位于私有网络 IP 上的 VIOS 来访问公共网络 IP 上的客户端。AIX 服务器充当路由器,它可以将所有网络数据包从 VIOS(私有网络)路由到客户端(公共网络)。
要将 AIX 服务器设置为 VIOS 的路由器或网关,则必须向它的路由表中添加路由,路由到 VIOS 路由表,并添加将与 VIOS 进行通信的外部系统的路由表(以便外部系统知道:在尝试使用 192.168.10.32 子网通信时,它需要将通信量发送给 9.3.129.14 IP)。
要查看您主机上的当前路由表,请使用以下命令:
#netstat -rn
图 2. VIOS 路由表
图 3. 客户端路由表
第一步是在将成为路由器的 AIX 服务器上启用 IP 转发。
#no -o ipforwarding=1
接下来,在 VIOS 上,我们需要为它添加一个路由,以便到达外部子网 9.3.129.XXX。
目标是公共网络:9.3.129.0
网关是启用了 IP 转发的 AIX 服务器的私有网络 IP。
#route add -net 9.3.129.0 192.168.10.32
之后,在其中一个外部系统(并非将成为启用 IP 转发的路由器的 AIX 服务器)上,我们需要制定一个有关如何返回 VIOS 的路由:
目标是私有网络:192.168.10.0
网关是 IP 转发服务器的公共网络 IP:9.3.129.14
#route add -net 192.168.10.0 9.3.129.14
现在,通信流程如下所示:
VIOS -----> AIX with two network cards ----> AIX with only public IP
first route IP forwarding on second route
注意:将在重新启动后刷新这些更改。要使其成为永久更改,请向 /etc/rc.tcpip 中添加以下行。
no -o ipforwarding=1
静态路由的优点
处理器/内存开销低
没有带宽开销(在路由器之间不共享更新)
可以对如何路由通信进行粒度控制
静态路由的缺点
必须手动调整基础结构更改
如果链接断开,则没有动态容错
在大型网络上不可行
摘抄自smallmiao的帖子,看着比较靠谱,你试试
查看当前的默认网关
netstat -rn
会看到有多条的default.
如果用route命令(或smitty route)去删除,下次重启后,又会回来;所以要从ODM里删除。
2.查看ODM信息
# lsattr -El inet0
authm 65536 Authentication Methods True
bootup_option no Use BSD-style Network Configuration True
gateway Gateway True
hostname appserv1 Host Name True
rout6 IPv6 Route True
route net,-hopcount,0,,0,192.111.10.251 Route True
route net,-hopcount,0,,0,192.110.9.63 Route True
route net,-hopcount,0,,0,192.111.11.251 Route True
route net,-hopcount,0,,0,192.110.9.251 Route True
# odmget -q "name=inet0" CuAt
CuAt:
name = "inet0"
attribute = "hostname"
value = "host1"
type = "R"
generic = "DU"
rep = "s"
nls_index = 24
CuAt:
name = "inet0"
attribute = "route"
value = "net,-hopcount,0,,0,192.111.11.251"
type = "R"
generic = "DU"
rep = "s"
nls_index = 0
CuAt:
name = "inet0"
attribute = "route"
value = "net,-hopcount,0,,0,192.111.10.251"
type = "R"
generic = "DU"
rep = "s"
nls_index = 0
CuAt:
name = "inet0"
attribute = "route"
value = "net,-hopcount,0,,0,192.110.9.251"
type = "R"
generic = "DU"
rep = "s"
nls_index = 0
CuAt:
name = "inet0"
attribute = "route"
value = "net,-hopcount,0,,0,192.110.9.63"
type = "R"
generic = "DU"
rep = "s"
nls_index = 0
其中正确的应是192.110.9.63,其它都是多余的。
3.逐条删除没用的默认路由
# chdev -l inet0 -a delroute="net,-hopcount,0,,0,192.111.11.251"
Method error (/usr/lib/methods/chginet):
0514-068 Cause not known.
0821-279 writing to routing socket: The process does not exist.
0821-103 : The command /usr/sbin/route delete -net -hopcount 0 0 192.111.11.251 failed.
###删除其它(略)###
出现上面的报错信息,应该是AIX5.3的“误报”(至少在5300-08-01上是这样,AIX6不会)可以不用理会。
4.确认生效
# lsattr -El inet0
authm 65536 Authentication Methods True
bootup_option no Use BSD-style Network Configuration True
gateway Gateway True
hostname appserv1 Host Name True
rout6 IPv6 Route True
route net,-hopcount,0,,0,192.110.9.63 Route True
# odmget -q "name=inet0" CuAt
CuAt:
name = "inet0"
attribute = "hostname"
value = "appserv1"
type = "R"
generic = "DU"
rep = "s"
nls_index = 24
CuAt:
name = "inet0"
attribute = "route"
value = "net,-hopcount,0,,0,192.110.9.63"
type = "R"
generic = "DU"
rep = "s"
nls_index = 0
# netstat -rn
Routing tables
Destination Gateway Flags Refs Use If Exp Groups
Route Tree for Protocol Family 2 (Internet):
default 192.110.9.63 UG 1 286227 en0 - -
127/8 127.0.0.1 U 9 337 lo0 - -
192.110.9.0 192.110.9.21 UHSb 0 0 en0 - - =>
192.110.9/24 192.110.9.21 U 22 1151844 en0 - -
192.110.9.21 127.0.0.1 UGHS 2 5510 lo0 - -
192.110.9.255 192.110.9.21 UHSb 0 4 en0 - -
Route Tree for Protocol Family 24 (Internet v6):
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)