“IPv6 support is disabled” warnings

 

最近在使用国内的服务器的时候经常会发现这个问题

其实问题很简单,就是默认来说,国内的服务器没有IPv6, 而postfix 的默认配置文件是有Ipv6的,因为就会出现下面的warning:

send-mail: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
send-mail: warning: inet_protocols: configuring for IPv4 support only
postdrop: warning: inet_protocols: IPv6 support is disabled: Address family not supported by protocol
postdrop: warning: inet_protocols: configuring for IPv4 support only

 

知道问题的出处,解决就简单多了,默认让postfix 只monitor IPv4就可以了

编辑/etc/postfix/main.cf

inet_protocols = all

改成

inet_protocols = ipv4

就完美解决了

给squid 添加 monit 自动监控功能

 

advertcn 在国内的电信节点本来是使用的nginx 的,可惜貌似实在有点问题,时断时续,可能是配置有点问题,无奈换回了squid

squid呢,0.1% 的可能性会因为这样或者那样的原因死机,于是就想加上一个monit 做自动监控

首先安装squid,十分的简单,直接yum install squid

其次,编辑/etc/monit.conf, 加入下面的命令

check process squid with pidfile /var/run/squid.pid
start program = “/etc/init.d/squid start”
stop program = “/etc/init.d/squid stop”

 

保存,然后monit -t 检查语法错误,如果没有问题了,就直接service monit start

online.net 的服务器安装xenserver,并且给VM 配置多IP

online.net 的服务器比较便宜,我也入手了一个做开发

但是他们使用的是failover IP,比较烦人。对于failover 的IP的配置,应该是这样

IPADDR: 你的failover IP

NETMASK: 255.255.255.255

GATEWAY: 把你的主IP 的最后一位改为1 即可

这是在centos 上的设置,用netinstall 可能会有问题。 这个时候再netinstall 的时候, 选用255.255.0.0 位netmask,主IP的最后一位改成1的IP为gateway 的IP

这样就让failover IP 和 gateway IP 在同一个IP段,这样就可以进行安装了。

等安装完毕以后,再改回原来上面的样子,然后在按照下面所说来添加IP route

 

 

但是安装完重启就不行了,这是因为ipaddr 和你的gateway 的IP 不在一个subnet上,你需要手工添加一条静态路由

假如说你用的是eth0,那么你就需要给eth0 添加一条静态路由:

File : /etc/sysconfig/network-scripts/route-eth0

GATEWAY_VM dev eth0
default via GATEWAY_VM dev eth0

然后重启

service network restart,这样你的IP 就可以被外界所访问了.

这是在你的 VM 上只有一个IP的,如果你有多个IP的时候,这个和普通的centos 一样,添加多个IP,但是当你在重启network 的时候,会发现centos 总是说:

Bringing up interface eth0: SIOCADDRT: No such process

这是因为系统在强制给你的 ip aliase 添加默认路由,其实这是不需要的了,因为已经添加在你的VM 的主 IP 上

这个时候你可以在ifcfg-eth0 上禁止向ip aliase 添加路由:

NO_ALIASROUTING=yes

 

如果你安装的是debian,那么就更简单了,编辑/etc/network/interfaces

修改如下即可:

auto eth0
iface eth0 inet static
address IP-Failover
netmask 255.255.255.255
broadcast IP-Failover
gateway MAIN-SERVER-IP.1
pointopoint MAIN-SERVER-IP.1

 

然后退出,运行service networking restart 即可

 

Linux GRE 中使用source based routing

现在很多米国的机房都在使用cisco 的路由,禁止流量从不属于自己的ip space 中流出自己的network,这就给GRE tunnel 造成了很大的不变。

但是也不是没有解决办法,这就是source based routing。

分为三步:

1) 加个路由表

2) 让tunnel 过来的 IP 使用新家的路由表

3) 给新加的路由表添加一个默认的gateway就可以了,这样通过tunnel 过来的IP 就可以按照原路返回

code:

1) echo ‘100 GRE’ >> /etc/iproute2/rt_tables

2) ip rule add from 198.255.255.0/24 table GRE

这里认为你把整个c段198.255.255.0/24 tunnel 到你现在的这台机器上

3) ip route add default via 192.168.1.1 table GRE

让这个新的IP 段使用192.168.1.1的 gateway,按照原来返回