centos怎样加静态路由

哈喽,今天咱们来聊聊怎么用 iproute 这个工具来查看和设置路由表。
这玩意儿在 Linux 系统管理中还是挺常用的,尤其是在网络配置上。

一、显示和设置路由
1 . 查看路由表
首先,咱们来看看怎么查看当前的路由表。
在终端里敲一下这个命令:
bash ip route show
你会看到类似这样的输出:
default via 1 9 2 .1 6 8 .1 5 0.2 5 4 dev enp0s3 proto static metric 1 02 4 1 9 2 .1 6 8 .1 5 0.0/2 4 dev enp0s3 proto kernel scope link src 1 9 2 .1 6 8 .1 5 0.1 1 0
嗯,这个输出有点儿杂乱,特别是 default 和 1 9 2 .1 6 8 .1 5 0.0/2 4 这两行,格式不太一样,看着不太舒服。
咱们可以用 column 命令来格式化一下输出,让它更整齐:
bash ip route show | column -t
这样,输出就会变得好看多了:
default via 1 9 2 .1 6 8 .1 5 0.2 5 4 dev enp0s3 proto static metric 1 02 4 1 9 2 .1 6 8 .1 5 0.0/2 4 dev enp0s3 proto kernel scope link src 1 9 2 .1 6 8 .1 5 0.1 1 0
这样一看,是不是清晰多了?
2 . 添加静态路由
接下来,咱们试试添加一个静态路由。
假设咱们想访问 1 0.1 5 .1 5 0.0/2 4 这个网络,但是要通过网关 1 9 2 .1 6 8 .1 5 0.2 5 3 可以这样做:
bash ip route add 1 0.1 5 .1 5 0.0/2 4 via 1 9 2 .1 6 8 .1 5 0.2 5 3 dev enp0s3
添加完之后,再看看路由表:
bash ip route show | column -t
你会发现多了一行:
default via 1 9 2 .1 6 8 .1 5 0.2 5 4 dev enp0s3 proto static metric 1 02 4 1 0.1 5 .1 5 0.0/2 4 via 1 9 2 .1 6 8 .1 5 0.2 5 3 dev enp0s3 proto static metric 1 1 9 2 .1 6 8 .1 5 0.0/2 4 dev enp0s3 proto kernel scope link src 1 9 2 .1 6 8 .1 5 0.1 1 0
这样,系统就知道怎么去访问 1 0.1 5 .1 5 0.0/2 4 这个网络了。

为了验证一下,咱们可以 ping 一个 1 0.1 5 .1 5 0.1 的地址:
bash ping 1 0.1 5 .1 5 0.1
如果一切正常,应该能看到 ping 的响应。

3 . 删除静态路由
如果以后不想再走这个路由了,删除它也很简单。
把 add 换成 del,或者直接写目标网络:
bash ip route del 1 0.1 5 .1 5 0.0/2 4
再看看路由表:
bash ip route show | column -t
你会发现 1 0.1 5 .1 5 0.0/2 4 这一行不见了。

总结
iproute 这个工具在 Linux 系统中非常强大,可以方便地查看和设置路由表。
通过格式化输出,我们可以更清晰地看到路由信息,方便管理和调试。
希望这篇文章能帮到大家!

我虚拟机上装的CentOS系统显示的ip配置是127.0.0.1,请问如何解决?

哈喽大家好,今天给大家分享一些关于网络设置的技巧,希望对大家有所帮助。

当我们需要设置网卡的IP地址和子网掩码时,直接使用命令ifconfig eth1 1 9 2 .1 6 8 .0.2 0 netmask 2 5 5 .2 5 5 .2 5 5 .0即可。
不过需要注意的是,如果系统重启后设置失效,可能需要进一步检查配置。

有时候我们还需要修改MAC地址,可以在/etc/rc.d/init.d/目录下的network脚本中添加一行ifconfig eth0 hw ether 00:0C:2 9 :C1 :A1 :1 E来修改。

要查看网络设置,可以使用route命令。
如果需要修改网关,可以添加或删除默认网关,使用route add default gw 网关地址和route del default gw 网关地址命令。

网络配置信息通常保存在/etc/sysconfig/network-scripts/ifcfg-eth0文件中,而DNS设置则可以在/etc/resolv.conf文件中查看。

如果需要重启网络服务,可以使用service network restart命令。
但在此之前,一定要确保IP地址设置正确,以免启动失败后需要到服务器现场操作。

要查看服务是否启动,可以使用service 服务名 status命令。
开启服务则使用service 服务名 start,关闭服务则使用service 服务名 stop。
如果想查看所有服务的启动状态,可以使用chkconfig --list命令。

最后,如果需要修改网络配置文件/etc/sysconfig/network-scripts/ifcfg-eth0,可以按照以下步骤进行:
1 . 使用vi /etc/sysconfig/network-scripts/ifcfg-eth0命令打开文件。
2 . 修改以下内容:
DEVICE=eth0:描述网卡对应的设备别名。

BOOTPROTO=static:设置网卡获得IP地址的方式,可以是static(静态指定IP地址)、dhcp(通过DHCP协议获得IP地址)或bootp(通过BOOTP协议获得IP地址)。

BROADCAST=1 9 2 .1 6 8 .0.2 5 5 :对应的子网广播地址。

HWADDR=00:07 :E9 :05 :E8 :B4 :对应的网卡物理地址。

IPADDR=1 2 .1 6 8 .1 .2 :如果设置网卡获得IP地址的方式为静态指定,此字段指定网卡对应的IP地址。

IPV6 INIT=no:是否启用IPv6
IPV6 _AUTOCONF=no:是否自动配置IPv6
NETMASK=2 5 5 .2 5 5 .2 5 5 .0:网卡对应的网络掩码。

NETWORK=1 9 2 .1 6 8 .1 .0:网卡对应的网络地址。

ONBOOT=yes:系统启动时是否设置此网络接口,设置为yes时,系统启动时激活此设备。

希望这些信息对大家有所帮助,如果还有其他问题,欢迎留言讨论哦!

centos7 双网卡配置路由

在CentOS7 上搞双网卡路由?没问题,这里有几个思路可以参考:
第一种,用iproute2 搞个单独的路由表:
这个方法比较适合想精细控制网络流量的朋友。
具体操作是先去 /etc/iproute2 /rt_table 这个文件里,给每块网卡建个路由表,比如给ens1 建个T1 表,给ens2 建个T2 表啥的。
建完表之后,再利用 ip route add 命令给这些表里加路由规则。
这样就能给不同的网卡指定不同的出网路径了,控制起来更得心应手。

第二种,改网卡配置文件设置静态路由:
这个方法适合喜欢固定网络配置的朋友。
你需要进入到 /etc/sysconfig/network-scripts/ 这个目录,找到对应网卡的配置文件,比如ifcfg-em1 和ifcfg-em2 然后在文件里设置网卡的IP地址、网关这些信息。
对外网那张卡,你得设置GATEWAY参数;对内网那张卡,就不需要设置GATEWAY参数了。
改完之后,重启一下网络服务,设置就生效了。

第三种,用NetworkManager服务管理网络配置和路由:
这个方法比较适合喜欢灵活操作的朋友。
你可以用 nmcli 命令创建新的网卡连接,并配置相关的网络参数。
NetworkManager提供了图形化界面和命令行工具,使得网络配置和路由管理更加灵活和方便。
用这个方法,你可以轻松地添加、删除或修改网络连接,以及配置静态路由和动态路由协议。

不管用哪种方法,都有几点需要注意:
确保你的网络环境和需求与所选方法相匹配。
在进行配置之前,备份相关的配置文件和网络设置,以防出现配置错误导致网络无法连接的情况。
验证配置是否正确,并测试网络连接以确保一切正常运行。

希望这些信息能帮到你!

centos7 rc.local不执行

CentOS7 系统里头啊,有时候咱们可能会碰到/etc/rc.local这个文件启动不了的情况。
下面我就给大家梳理一下可能的原因和对应的解决办法:
首先啊,得看看这个文件有没有执行权限。
为啥呢?因为/etc/rc.local其实是/etc/rc.d/rc.local的一个软链接,如果它没有执行权限,那肯定就启动不了了。
解决这个问题的方法很简单,就用个命令chmod +x /etc/rc.d/rc.local给它加上执行权限就OK了。

其次呢,如果你在rc.local里配置了路由,但发现它重启后不生效,那可能是因为在CentOS7 启动的时候,网络服务还没启动好,所以依赖网络的路由配置就没办法生效。
这时候你有两个选择:一是不用rc.local来配置路由,而是把它写成静态路由,放在/etc/sysconfig/network-scripts/目录下的route-文件里;二是修改一下rc-local服务的配置,在它的[Unit]模块里把Requires和After设成network-online.target,这样rc.local就会在网络服务启动后再执行。

最后啊,还得看看执行rc.local的用户有没有权限。
如果在rc.local里指定了用户来执行命令,但这个用户对脚本所在的目录没有管理权限,那也是启动不了的。
所以,你得确保这个用户有权限,最好是把脚本所在目录的所有权给这个用户。

以上就是关于CentOS7 中/etc/rc.local不执行的可能原因和解决办法。
希望这些信息能帮到大家。
如果问题还是解决不了,建议还是找专业的Linux系统管理员帮忙看看,或者再仔细查查相关文档。