免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
1234下一页
最近访问板块 发新帖
查看: 9499 | 回复: 31
打印 上一主题 下一主题

[OpenBSD] [原创]OpenBSD 3.8 + PF + PFSYNC + CARP [复制链接]

论坛徽章:
1
寅虎
日期:2013-09-29 23:15:15
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-12-01 22:11 |只看该作者 |倒序浏览
OpenBSD 3.8 + PF + PFSYNC + CARP
日期:2005.12.1
作者:congli

参考:http://www.countersiege.com/doc/pfsync-carp/
参考:pfsync 及 carp 手册

实验环境:
VMWare 5.5,虚拟三台BSD,两台OpenBSD,一台FreeBSD.每台OpenBSD均有三块网卡.
虚拟机1:
名称:OpenBSD(GZ)
网卡pcn0:192.168.0.110/24        (接外网 vmnet0 桥接 192.168.0.0/24)
网卡pcn1:192.168.20.110/24        (接内网 vmnet2 NAT 192.168.20.0/24)
网卡pcn2:192.168.30.110/24        (pfsync vmnet3 NAT 192.168.30.0/24)
网关:192.168.0.254

虚拟机2:
名称:OpenBSD(PY)
网卡pcn0:192.168.0.120/24        (接外网 vmnet0 桥接 192.168.0.0/24)
网卡pcn1:192.168.20.120/24        (接内网 vmnet2 NAT 192.168.20.0/24)
网卡pcn2:192.168.30.120/24        (pfsync vmnet3 NAT 192.168.30.0/24)
网关:192.168.0.254

虚拟机3:
名称:FreeBSD
网卡lnc0:192.168.20.10/24        (接内网 vmnet2 NAT 192.168.20.0/24)
网关:192.168.20.200



设置:
1./etc/pf.conf(两台OpenBSD使用相同的规则),下面的规则非常简单,只用于测试.

  1. ext_if  = "pcn0"
  2. int_if  = "pcn1"
  3. sync_if = "pcn2"
  4. loop_if = "lo0"

  5. nat on $ext_if from $int_if:network to any -> $ext_if

  6. pass quick on { $sync_if } proto pfsync
  7. pass on { $ext_if $int_if } proto carp keep state

  8. pass in quick all keep state
  9. pass out quick all keep state
复制代码


2.在OpenBSD(GZ)和OpenBSD(PY)中,分别增加下面文件.
# vi /etc/hostname.carp0
  1. vhid 1 pass foo 192.168.0.200 255.255.255.0
复制代码


# vi /etc/hostname.carp1
  1. vhid 2 pass bar 192.168.20.200 255.255.255.0
复制代码


# vi /etc/hostname.pfsync0
  1. syncpeer 192.168.30.200 syncdev pcn2
复制代码


# vi /etc/rc.conf.local
  1. pf=YES
复制代码


3.设置FreeBSD
# vi /etc/rc.conf

  1. defaultrouter="192.168.20.200"
  2. ifconfig_lnc0="inet 192.168.20.10 netmask 255.255.255.0"
复制代码


# vi /etc/resolv.conf

  1. nameserver 202.96.128.68
  2. nameserver 202.96.134.133
复制代码


4.设置完毕之后,重启三台虚拟机.

5.简单测试:
在FreeBSD虚拟机中,ping一个Internet上的真实IP,随便关闭那一台OpenBSD都可以.

附ifconfig
1.OpenBSD(GZ)

  1. lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224
  2.         groups: lo
  3.         inet 127.0.0.1 netmask 0xff000000
  4. pcn0: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
  5.         lladdr 00:0c:29:fe:67:4b
  6.         groups: egress
  7.         media: Ethernet autoselect (autoselect)
  8.         inet 192.168.0.110 netmask 0xffffff00 broadcast 192.168.0.255
  9. pcn1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
  10.         lladdr 00:0c:29:fe:67:55
  11.         media: Ethernet autoselect (autoselect)
  12.         inet 192.168.20.110 netmask 0xffffff00 broadcast 192.168.20.255
  13. pcn2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  14.         lladdr 00:0c:29:fe:67:5f
  15.         media: Ethernet autoselect (autoselect)
  16.         inet 192.168.30.110 netmask 0xffffff00 broadcast 192.168.30.255
  17. pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33224
  18. pfsync0: flags=0<> mtu 1348
  19.         pfsync: syncdev: pcn2 syncpeer: 192.168.30.200 maxupd: 128
  20. enc0: flags=0<> mtu 1536
  21. carp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  22.         carp: BACKUP carpdev pcn0 vhid 1 advbase 1 advskew 0
  23.         groups: carp
  24.         inet 192.168.0.200 netmask 0xffffff00 broadcast 255.255.255.0
  25. carp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  26.         carp: BACKUP carpdev pcn1 vhid 2 advbase 1 advskew 0
  27.         groups: carp
  28.         inet 192.168.20.200 netmask 0xffffff00 broadcast 255.255.255.0
复制代码


2.OpenBSD(PY)

  1. lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 33224
  2.         groups: lo
  3.         inet 127.0.0.1 netmask 0xff000000
  4. pcn0: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
  5.         lladdr 00:0c:29:cc:f5:37
  6.         groups: egress
  7.         media: Ethernet autoselect (autoselect)
  8.         inet 192.168.0.120 netmask 0xffffff00 broadcast 192.168.0.255
  9. pcn1: flags=8b43<UP,BROADCAST,RUNNING,PROMISC,ALLMULTI,SIMPLEX,MULTICAST> mtu 1500
  10.         lladdr 00:0c:29:cc:f5:41
  11.         media: Ethernet autoselect (autoselect)
  12.         inet 192.168.20.120 netmask 0xffffff00 broadcast 192.168.20.255
  13. pcn2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  14.         lladdr 00:0c:29:cc:f5:4b
  15.         media: Ethernet autoselect (autoselect)
  16.         inet 192.168.30.120 netmask 0xffffff00 broadcast 192.168.30.255
  17. pflog0: flags=141<UP,RUNNING,PROMISC> mtu 33224
  18. pfsync0: flags=0<> mtu 1348
  19.         pfsync: syncdev: pcn2 syncpeer: 192.168.30.200 maxupd: 128
  20. enc0: flags=0<> mtu 1536
  21. carp0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  22.         carp: MASTER carpdev pcn0 vhid 1 advbase 1 advskew 0
  23.         groups: carp
  24.         inet 192.168.0.200 netmask 0xffffff00 broadcast 255.255.255.0
  25. carp1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  26.         carp: MASTER carpdev pcn1 vhid 2 advbase 1 advskew 0
  27.         groups: carp
  28.         inet 192.168.20.200 netmask 0xffffff00 broadcast 255.255.255.0
复制代码


3.FreeBSD

  1. # ifconfig
  2. lnc0: flags=108843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> mtu 1500
  3.         inet 192.168.20.10 netmask 0xffffff00 broadcast 192.168.20.255
  4.         inet6 fe80::20c:29ff:fe1d:bbda%lnc0 prefixlen 64 scopeid 0x1
  5.         ether 00:0c:29:1d:bb:da
复制代码

[ 本帖最后由 congli 于 2005-12-2 09:18 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2005-12-01 22:27 |只看该作者
好贴!收藏了!

论坛徽章:
0
3 [报告]
发表于 2005-12-01 23:10 |只看该作者
偶的机子(Althon XP 1800+,RAM 256M)虚拟一台OPENBSD(100M RAM)都已经够折磨我的了

论坛徽章:
1
寅虎
日期:2013-09-29 23:15:15
4 [报告]
发表于 2005-12-01 23:13 |只看该作者
原帖由 MichaelBibby 于 2005-12-1 23:10 发表
偶的机子(Althon XP 1800+,RAM 256M)虚拟一台OPENBSD(100M RAM)都已经够折磨我的了

呵~~BSD就给他32MB的RAM也可以啊,做实验时,每台OpenBSD分了64 MB,FreeBSD分了128 MB

论坛徽章:
0
5 [报告]
发表于 2005-12-01 23:13 |只看该作者
你把内存调小点不行吗?我的弄成64M。

论坛徽章:
0
6 [报告]
发表于 2005-12-01 23:16 |只看该作者
呵呵。。对OB不熟悉啊

论坛徽章:
0
7 [报告]
发表于 2005-12-01 23:18 |只看该作者
喜欢bsd就因该都熟悉一下,真的是各有各的特点。

论坛徽章:
1
寅虎
日期:2013-09-29 23:15:15
8 [报告]
发表于 2005-12-01 23:22 |只看该作者
原帖由 mafa 于 2005-12-1 23:18 发表
喜欢bsd就因该都熟悉一下,真的是各有各的特点。

呵~~有时间跟兄弟学一下NetBSD.

论坛徽章:
0
9 [报告]
发表于 2005-12-01 23:34 |只看该作者
我有是有这样的机器。办公室给我弄的专门做实验的。P43.0  2G  36G scsi
可惜可能主板有毛病。跑windows无论什么版本都死机。但是跑linux整死不死。BSD也不死。。但是
linux和BSD下的虚拟机搞不定。老大说换主板。不知道要等到哪年去了。。

论坛徽章:
1
寅虎
日期:2013-09-29 23:15:15
10 [报告]
发表于 2005-12-01 23:39 |只看该作者
原帖由 loveKDE 于 2005-12-1 23:34 发表
我有是有这样的机器。办公室给我弄的专门做实验的。P43.0  2G  36G scsi
可惜可能主板有毛病。跑windows无论什么版本都死机。但是跑linux整死不死。BSD也不死。。但是
linux和BSD下的虚拟机搞不定。老大说换主板 ...

倒,能弄到这样的机器来做实验,难道一块板还搞不定.呵~~~
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP