在Linux上基于源地址路由实现电信网通双线
想要通过普通的静态策略路由来实现电信网通双线基本上是不可能的,因为那将需要维护相当大的一个IP段的数据库,而且还需要随时更新才能保证效果。
后来听前辈们说,可以采用基于源地址路由的方式来处理,让进来的数据,从哪个IP进来就从哪个IP返回。
下面就是一个在生产中得到了实际应用的脚本:
==============================================================
#!/bin/bash
##
## CNC_RULE AND CTC_RULE from /etc/iproute2/rt_tables
## echo 200 cnc >> /etc/iproute2/rt_tables
## echo 201 ctc >> /etc/iproute2/rt_tables
##
CTC_DEVICE="eth0"
CTC_RULE="ctc"
CTC_NETWORK="10.10.10.0"
CTC_GATEWAY="10.10.10.1"
CTC_IPADDR="10.10.10.2"
CNC_DEVICE="eth1"
CNC_RULE="cnc"
CNC_NETWORK="20.20.20.0"
CNC_GATEWAY="20.20.20.1"
CNC_IPADDR="20.20.20.2"
ACTION="add"
if [ $# -ne 0 ]; then
if [ "$1" != "add" -a "$1" != "del" ]; then
echo "error"
else
ACTION="$1"
fi
fi
ip route ${ACTION} ${CNC_NETWORK} dev ${CNC_DEVICE} src ${CNC_IPADDR} table ${CNC_RULE}
ip route ${ACTION} default via ${CNC_GATEWAY} table ${CNC_RULE}
ip route ${ACTION} ${CTC_NETWORK} dev ${CTC_DEVICE} src ${CTC_IPADDR} table ${CTC_RULE}
ip route ${ACTION} default via ${CTC_GATEWAY} table ${CTC_RULE}
ip rule ${ACTION} from ${CNC_IPADDR} table ${CNC_RULE}
ip rule ${ACTION} from ${CTC_IPADDR} table ${CTC_RULE}
ip route add default via ${CTC_GATEWAY}
ip rule add to 200.200.0.0/16 table cnc
==============================================================
在执行脚本之前,先执行以下命令:
echo 200 cnc >> /etc/iproute2/rt_tables
echo 201 ctc >> /etc/iproute2/rt_tables
最后的 ip rule add to 200.200.0.0/16 table cnc 相当于是添加了一个例外,让200.200.0.0/16这个段的直接从cnc出去。
相关文档:
http://hi.baidu.com/vsgp/blog/item/0daae64589a3852fcffca3e7.html
1、安装vsftpd
终端输入:sudo apt-get install vsftpd
安装了之后会在/home/下建立一个ftp目录。这时候你可以试着访问下ftp://IP地址。应该可以看到一个空白内容的ftp空间。
启用:sudo /etc/init.d/vsftpd start
停用:sudo /etc/init.d/ ......
在Windows中可以在某些路径中查找文件,也可以设定不在某些路径中查找文件,下面用Linux中的find的命令结合其-path -prune参数来看看在Linux中怎么实现此功能。
假如在当前目录下查找文件,且当前目录下有很多文件及目录(多层目录),包括dir0、dir1和dir2 ...等目录及dir00、dir01...dir10、dir11...等子目录。
......
在Linux里面一切皆文件,从文件学起来,最常见的命令就是查看文件和搜索文件。
下面简单的总结下这几个命令:
查看文件(cat,tac,more,less,head,tail,od)
cat:
cat [file]
查看文件的内容。全程式concatenate的意思,将文件内容连续输出到屏幕上。第一行到最后一行显示。
tac:
tac [file]
和cat刚好相反 是从 ......
linux中的SHELL函数是可以带参数的.
====代码===
#!/bin/bash
function show()
{
echo $0 #返回脚本本身名字而不是函数名
echo $1 #返回调用时的第一个参数
.
.
.
echo $9   ......
一 、Linux文件结构
文件结构是文件存放在磁盘等存贮设备上的组织方法。主要体现在对文件和目录的组织上。
目录提供了管理文件的一个方便而有效的途径。
Linux使用标准的目录结构,在安装的时候,安装程序就已经为用户创建了文件系统和完整而固定的目录组成形式,并指定了每个目录的作用和其中的文件类型 ......