FogBugz On Demand를 제공하기 위해 OpenBSD 라우터 / 방화벽을 독점적으로 운영합니다. 대중 교통 역할을 수행하고 있고 목적으로 구축 된 하드웨어 및 통합 소프트웨어가 제공 할 수있는 매우 높은 pps 처리량이 필요한 경우가 아니라면 견고한 하드웨어의 OpenBSD는보다 관리하기 쉽고 확장 가능하며 경제적 인 솔루션입니다.
OpenBSD와 IOS 또는 JUNOS 비교 (제 경험상) :
장점
- pf 방화벽은 유연성, 관리 가능한 구성 및 다른 서비스와의 통합 측면에서 타의 추종을 불허합니다 (spamd, ftp-proxy 등과 완벽하게 작동). 구성 예제는 정의하지 않습니다.
- 게이트웨이에서 * nix의 모든 도구 (syslog, grep, netcat, tcpdump, systat, top, cron 등)를 얻습니다.
- 필요에 따라 도구를 추가 할 수 있습니다. iperf 및 iftop 매우 유용합니다.
- tcpdump. 충분했다.
- Unix 재향 군인을위한 직관적 인 구성
- 기존 구성 관리 (cfengine, 꼭두각시, 스크립트 등)와 완벽하게 통합됩니다.
- 차세대 기능은 무료이며 추가 모듈이 필요하지 않습니다.
- 성능 추가가 저렴
- 지원 계약이 없음
단점
- IOS / JUNOS를 사용하면 전체 구성을보다 쉽게 덤프 /로드 할 수 있습니다. 구성 관리 도구가 없으면 구성을 작성한 후에 쉽게 배포 할 수 있습니다.
- 일부 인터페이스는 OpenBSD에서 사용할 수 없거나 안정적이지 않습니다 (예 : 잘 지원되는 ATM DS3 카드는 없습니다).
- 고급 전용 Cisco / Juniper 유형 장치는 서버 하드웨어보다 더 높은 PP를 처리합니다
- 지원 계약이 없음
ISP와 같은 환경에서 백본 라우터 나 특수 네트워크 연결과 연결되는 에지 라우터에 대해 이야기하지 않는 한 OpenBSD는 괜찮을 것입니다.
하드웨어
라우터 성능에서 가장 중요한 것은 NIC입니다. 수신하는 모든 단일 패킷에 대해 방해가되는 NIC가 있으면 고속 CPU는 적당한로드에서 빠르게 압도됩니다. 최소한 인터럽트 완화 / 응집을 지원하는 기가비트 NIC를 찾으십시오. Broadcom (bge, bnx) 및 Intel (em) 드라이버와 함께 행운을 빕니다.
CPU 속도는 전용 하드웨어보다 중요하지만 걱정할 사항은 없습니다. 최신 서버급 CPU는 많은 트래픽을 처리하기 전에 많은 트래픽을 처리합니다.
적절한 ECC RAM, 안정적인 하드 드라이브 및 견고한 섀시로 괜찮은 CPU를 얻으십시오 (여러 코어는 아직 많은 도움이되지 않으므로 원시 GHz를보십시오). 그런 다음 모든 것을 두 배로 늘리고 두 개의 노드를 활성 / 수동 CARP 클러스터로 실행하십시오. 4.5의 pfsync 업그레이드 이후에는 active / active를 실행할 수 있지만 테스트하지는 않았습니다.
내 라우터는 1U 트윈 노드 구성에서로드 밸런서와 나란히 실행됩니다. 각 노드에는 다음이 있습니다.
- Supermicro SYS-1025TC-TB 섀시 (내장 Intel Gigabit NIC)
- Xeon Harpertown Quad Core 2GHz CPU (내로드 밸런서는 다중 코어를 사용합니다)
- 4GB Kingston ECC 등록 RAM
- 듀얼 포트 인텔 기가비트 애드 인 NIC
배포 이후로 견고했습니다. 이것에 관한 모든 것은 트래픽로드에 과잉이지만 처리량을 800Mbps 이상으로 테스트했습니다 (NIC 제한, CPU는 대부분 유휴 상태 임). 우리는 VLAN을 많이 사용하므로 이러한 라우터는 많은 내부 트래픽도 처리해야합니다.
각 1U 섀시에는 2 개의 노드에 전원을 공급하는 단일 700W PSU가 있으므로 전력 효율성이 환상적입니다. 여러 섀시를 통해 라우터와 밸런서를 배포하여 전체 섀시를 잃을 수 있고 장애 조치가 거의 이루어졌습니다 (pfsync 및 CARP 감사).
운영체제
다른 사람들은 OpenBSD 대신 Linux 또는 FreeBSD를 사용한다고 언급했습니다. 내 서버의 대부분은 FreeBSD이지만 몇 가지 이유로 OpenBSD 라우터를 선호합니다.
- Linux 및 FreeBSD보다 보안 및 안정성에 더 집중
- 모든 오픈 소스 OS에 대한 최고의 문서
- 그들의 혁신은 이러한 유형의 구현을 중심으로 이루어집니다 (pfsync, ftp-proxy, carp, vlan 관리, ipsec, sasync, ifstated, pflogd 등 참조).
- FreeBSD는 pf 포트에서 여러 버전을 지원합니다
- pf는 iptables, ipchains, ipfw 또는 ipf보다 더 우아하고 관리 가능합니다.
- Leaner 설정 / 설치 프로세스
즉, Linux 또는 FreeBSD에 대해 잘 알고 있고 투자 할 시간이 없다면 그 중 하나를 사용하는 것이 좋습니다.