我的 CentOS 6.3 机器有问题。我们在服务器中有两个网卡(eth0 和 eth1),每个网卡都分配了一个来自不同子网的 IP,比方说 eth0:192.168.1.2/24(网关 192.168.1.1)和 eth1:192.168.2.2/24(网关 192.1688) 2.1)。真正的 ips 是世界可路由的。
每个 NIC 连接到不同的交换机,但最终连接到一个路由器。在路由器上,这两个子网位于不同的 VLAN 中,连接到 NIC 的端口没有标记,因此没有将 VLAN id 传递到服务器上。
现在在 FreeBSD 上,我只是将 ips 分配给每个 NIC,它就可以正常工作,两个 IP 都可以访问。在 CentOS 上,我只能访问网关处于活动状态的 IP 作为默认路由。我可以 ping 同一个 VLAN/子网内的任何 IP,但在此之外无法访问。
当我对每个网关进行跟踪路由时,我看到它们通过了相应的 NIC,这是有道理的,因为网关在范围内。但是在子网之外,我目前只能 ping 192.168.1.2。
IPtables 目前也不活跃。
要使其发挥作用,需要采取哪些措施?
我在谷歌上搜索了几个小时,尝试了不同的方法,但没有用。我觉得我错过了一些重要的东西,希望能轻松解决:-)
任何帮助表示赞赏谢谢!斯科特
路由
# route -n
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
192.168.1.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 …Run Code Online (Sandbox Code Playgroud) 我们从源代码构建我们自己的 php 和 mysql 包,这个包用于 php-5.4.10 版本,并将它们托管在我们自己的存储库中。我们称这个包为 custom-php 和 custom-mysql(-libs & -server)
当我在服务器上执行 yum install custom-php 时,yum 列出了一个依赖问题:
--> Finished Dependency Resolution
Error: Package: custom-php-1.1.x86_64 (php)
Requires: libmysqlclient.so.18(libmysqlclient_16)(64bit)
Error: Package: custom-php-1.1.x86_64 (php)
Requires: libmysqlclient.so.18(libmysqlclient_18)(64bit)
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
Run Code Online (Sandbox Code Playgroud)
文件 libmysqlclient.so.18 由 custom-mysql-libs 提供,它列在 custom-php 的规范文件中的 Requires 下。即使我在发出 yum install custom-php 之前手动安装 custom-mysql-libs,我仍然会收到上述错误。
我们的 custom-mysql-libs 是从 mysql 源代码构建的,并提供 libmysqlclient.so:
$ rpm -qlp custom-mysql-libs-1.0.x86_64.rpm
/custom/lib64/libmysqlclient.so
/custom/lib64/libmysqlclient.so.18
/custom/lib64/libmysqlclient.so.18.0.0
.... …Run Code Online (Sandbox Code Playgroud)