琐碎知识点
route add defaule gw 172.25.44.1 #添加网关
sysctl -w net.ipv4.ip_foward=1 #临时打开内核路由功能,转发数据包
详细步骤在官网上:IPVS FULLNAT and SYNPROXY
关闭所有的虚拟机(为了留够内存),打开一个虚拟机,把虚拟机大小改为2048
[root@base1 ~]# ls # 获取安装包,可根据不同的需求来安装不同的版本
asciidoc-8.4.5-4.1.el6.noarch.rpm
kernel-2.6.32-220.23.1.el6.src.rpm
Lvs-fullnat-synproxy.tar.gz
newt-devel-0.52.11-3.el6.x86_64.rpm
slang-devel-2.2.1-1.el6.x86_64.rpm
[root@base1 ~]# yum install -y rpm-build
[root@base1 ~]# rpm -ivh kernel-2.6.32-220.23.1.el6.src.rpm
[root@base1 ~]# cd rpmbuild
[root@base1 ~]# cd SPECS/
[root@base1 ~]# ls
kernel.spec
[root@base1 ~]# rpmbuild -bp kernel.spec #下载此软件需要解决依赖性
error: Failed build dependencies:
redhat-rpm-config is needed by kernel-2.6.32-220.23.1.el6.x86_64
patchutils is needed by kernel-2.6.32-220.23.1.el6.x86_64
xmlto is needed by kernel-2.6.32-220.23.1.el6.x86_64
asciidoc is needed by kernel-2.6.32-220.23.1.el6.x86_64
elfutils-libelf-devel is needed by kernel-2.6.32-220.23.1.el6.x86_64
binutils-devel is needed by kernel-2.6.32-220.23.1.el6.x86_64
newt-devel is needed by kernel-2.6.32-220.23.1.el6.x86_64
python-devel is needed by kernel-2.6.32-220.23.1.el6.x86_64
perl(ExtUtils::Embed) is needed by kernel-2.6.32-220.23.1.el6.x86_64
hmaccalc is needed by kernel-2.6.32-220.23.1.el6.x86_64
[root@base1 ~]# yum install asciidoc-8.4.5-4.1.el6.noarch.rpm newt-devel-0.52.11-3.el6.x86_64.rpm slang-devel-2.2.1-1.el6.x86_64.rpm -y
[root@base1 ~]# yum install redhat-rpm-config patchutils xmlto asciidoc elfutils-libelf-devel kernel.spec binutils-devel newt-devel python-devel perl-ExtUtils-Embed hmaccalc gcc -y
[root@base1 ~]# cd rpmbuild/
[root@base1 ~]# cd SPECS/
[root@base1 ~]# rpmbuild -bp kernel.spec #在此处会卡住,虚拟机开启图形的话就可以敲键盘解决,没图形就按照提示来解决
### should use a hardware random number generator if one is available, eg:
###
### r ngd -r /dev/hwrandom
###
### If one isn't available, the pseudo-random number generator can be used:
###
### r ngd -r /dev/urandom #直接下载这个就可以跳过等待
###
[root@base1 ~]# yum whatprovides */rngd #重新打开一个窗口
Loaded plugins: product-id, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
HighAvailability/filelists_db | 38 kB 00:00
LoadBalancer/filelists_db | 3.9 kB 00:00
ResilientStorage/filelists_db | 39 kB 00:00
rng-tools-2-13.el6_2.x86_64 : Random number generator related utilities
Repo : rhel-source
Matched from:
Filename : /etc/sysconfig/rngd
Filename : /sbin/rngd
Filename : /etc/rc.d/init.d/rngd
[root@base1 ~]# yum install rng-tools-2-13.el6_2.x86_64 -y
[root@base1 ~]# rngd -r /dev/urandom
[root@base1 ~]# tar zxf Lvs-fullnat-synproxy.tar.gz
[root@base1 ~]# cd rpmbuild/BUILD/
[root@base1 ~]# ls
kernel-2.6.cd kernel-2.6.32-220.23.1.el6/
[root@base1 ~]# cd kernel-2.6.cd kernel-2.6.32-220.23.1.el6/
[root@base1 ~]# ls
linux-2.6.32-220.23.1.el6.x86_64
vanilla-2.6.32-220.23.1.el632-220.23.1.el6
[root@base1 ~]# cd linux-2.6.32-220.23.1.el6.x86_64/
[root@base1 ~]# cp /root/lvs-fullnat-synproxy/lvs-2.6.32-220.23.1.el6.patch .
[root@base1 ~]# patch -p1 < lvs-2.6.32-220.23.1.el6.patch # 打补丁,-p1 这是数字1
[root@base1 ~]# uname -r
2.6.32-431.el6.x86_64
[root@base1 ~]# vim Makefile #改名字
EXTRAVERSION = -431.el6.x86_64
[root@base1 ~]# make #等待即可,此过程比较漫长,请耐心等待
[root@base1 ~]# make modules_install
[root@base1 ~]# make install
[root@base1 ~]# cd /boot/
[root@base1 ~]# cd grub/
[root@base1 ~]# vim grub.conf
default =0 #把这个参数改为0
[root@base1 ~]# reboot
[root@base1 ~]# yum remove ipvsadm
[root@base1 ~]# cd lvs-fullnat-synproxy/
[root@base1 ~]# tar zxf lvs-tools.tar.gz
[root@base1 ~]# cd tools/
[root@base1 ~]# cd keepalived/
[root@base1 ~]# yum install openssl-devel -y
[root@base1 ~]# yum install -y popt-devel
[root@base1 ~]# ./configure --with-kernel-dir="/lib/modules/`uname -r`/build"
[root@base1 ~]# make
[root@base1 ~]# make install
[root@base1 ~]# cd lvs-fullnat-synproxy/tools/ipvsadm/
[root@base1 ~]# make
[root@base1 ~]# make install
[root@base1 ~]# ipvsadm --help # 查看fullnat mode是否添加成功
######以上就是FULLNAT模块的添加过程,如有不足,请多多指教