ネットワークエンジニアに 求められるものは何か?

Vyatta技術詳細
株式会社まほろば工房 谷津 航
1
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
目次

Vyattaとは

使用例

その他

まとめ
2
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
Vyattaとは
3
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
Linuxをルータっぽく使ったことありますか?
ルータ製品を使いたかったけど、ルータ製品で頑張れない場合


予算と機能のかねあい
サーバマシンに、ルータとして頑張ってもらう。
たぶん、こういう機能を使ったと思います。









4
iptables
openvpn
tcpdump
named (DNSキャッシュ)
dhcpd
quagga
vrrpd/keepalived
etc...
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
こんなかんじ?
ファイアーウォール/NAT
(iptables)
インターネット
VPN終端
(openvpn他)
Linuxでルータ
DMZ
外部向け
サーバ
DNSキャッシュ
(named)
DHCPサーバ
(dhcpd)
OSPF/BGP
(quagga)
5
社内サーバ
クライアントPC
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
こんなかんじ?
(debianの場合のファイル名)
ファイアーウォール/NAT
(iptables)
VPN終端
(openvpn他)
インターネット
/etc/iptables/rules
/etc /openvpn/*
Linuxでルータ
DNSキャッシュ
(named)
DHCPサーバ
(dhcpd)
OSPF/BGP
(quagga)
6
DMZ
named.conf
dhcpd.conf
クライアントPC
社内サーバ
/etc /quagga/*
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
全
部
外部向け
別
サーバ
個
に
管
理
たいへん
Vyattaの場合こんなかんじ
ファイアーウォール/NAT
(iptables)
VPN終端
(openvpn他)
インターネット
iptables/rules
/etc /openvpn/*
DMZ
VYATTA
DNSキャッシュ
(named)
DHCPサーバ
(dhcpd)
OSPF/BGP
(quagga)
7
このファイルだけ管理
外部向け
サーバ
Vyattaの設定
ファイル
(config.boot)
named.conf
dhcpd.conf
クライアントPC
社内サーバ
/etc /quagga/*
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
らくちん
Vyattaとは
Vyatta このへん
ソフトウェアルータ



Vyatta自身がルータ機能の全
てを提供してるわけではありま
せん。
いろいろなOSSを、Debian
パッケージとして搭載すること
で、各機能を実現しています。




UI(設定管理/状態表示)
各ソフトウェアの設定ファイル
をとりまとめてくれる。
各ソフトウェアのバージョン管
理もしている。(APTで)

8
openvpn
named
一部のOSSはVyattaカスタム
Vyattaの役割

iptables
tcpdump
vrrpd
Debian
各ソフトウェアを
パッケージとして管理
dhcpd
quagga
Linux
kernel
APTを使って独自にソフトウェア追
加/更新できちゃう。
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
Vyatta使用例
9
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
使用例1

拠点/オフィスに設置の
ルータ



IPSec
NAT
VLAN
別の拠点
インターネット
NAT
I
P
S
e
c
Vyatta
802.1q
LAN1
LAN2
LAN3
10
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
使用例1

vyatta設定(IPSec部分)

/etc/ipsec.conf
vpn {
# generated by
ipsec {
/opt/vyatta/sbin/vpn-config.pl
(snip)
(snip)
ipsec-interfaces {
conn peer-10.0.100.1-tunnel-10
interface eth1
left=10.0.100.2
}
right=10.0.100.1
site-to-site {
ike=aes128-sha1!
peer 10.0.100.1 {
ikelifetime=28800s
authentication {
keyingtries=%forever
mode pre-shared-secret
esp=aes128-sha1!
pre-shared-secret vyatta
keylife=3600s
}
rekeymargin=540s
ike-group ike1
type=tunnel
local-ip 10.0.100.2
pfs=yes
tunnel 10 {
compress=no
allow-nat-networks disable
authby=secret
esp-group esp1
auto=start
}
#conn peer-10.0.100.1-tunnel-10
}
}
}
}
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
11
使用例1

vyatta設定(NAT)
service {
nat {
rule 100 {
outbound-interface eth1
type masquerade
}
}
(snip)
}

vyatta設定(VLAN)
interfaces {
ethernet eth0 {
(snip)
vif 1000 {
address 10.0.0.2/24
}
}
}
12
commitすると
(vyatta独自の保存形式)
iptablesを実行
# /sbin/iptables -t nat -A POSTROUTING
-s 192.168.1.0/24 -j MASQUERADE
(vyatta独自の保存形式)
vconfigを実行
# /sbin/vconfig add eth0 1000
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
使用例2

ISP網内のAS境界ルータ


OSPF
BGP
インターネット
B
G
P
Vyatta
O
S
P
F
内部ルータ
コアルータ
13
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
使用例2

vyatta設定(BGP&OSPF)
protocols {
bgp 65001 {
neighbor 10.1.1.2 {
remote-as 65004
soft-reconfiguration {
inbound
}
}
parameters {
log-neighbor-changes
}
}
ospf {
area 0.0.0.0 {
network 10.1.0.0/16
}
}
}
14
commitすると
(vyatta独自の保存形式)
vtysh実行
/usr/bin/vtysh –c configure terminal ¥
-c router bgp 65001 ¥
-c neighbor 10.1.1.2 remote-as 65004 ¥
-c neighbor 10.1.1.2 soft-reconfiguration inbound ¥
-c bgp log-neighbor-changes
/usr/bin/vtysh –c configure terminal ¥
-c router ospf ¥
-c network 10.1.0.0/16 area 0.0.0.0
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
その他の使用例(SNMP)

vyatta設定(SNMP)
service {
snmp {
community vyatta {
authorization ro
network 192.168.0.0/24
}
contact [email protected]
description VC6.1
location somewhere
trap-target 192.168.0.4 {
community vyatta
port 162
}
}
(snip)
}
15

/etc/snmp/snmpd.conf
# autogenerated by vyatta-snmp.pl
(snip)
rocommunity vyatta 192.168.0.0/24
syscontact "[email protected]"
sysdescr "VC6.1"
syslocation "somewhere"
(snip)
trap2sink 192.168.0.4:162 vyatta
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
その他
16
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
保守性

故障時の筺体交換



交換用の機器でvyattaを起動する。
ログインする。
事前にバックアップしておいたvyatta
設定ファイル(config.boot)を、交換
用の機器の
/opt/vyatta/etc/config/ に置く。


バージョンアップ
scpなど

load config.boot コマンドを実行す
る。

ログインする。
サービスを停止させる。
sudo full-upgrade –k コマンドを実
行する。
(再起動される)
ログインする。
サービスを再開する。





アプライアンス機みたいな使用感
17
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
インストール





Live CDで起動して、
install-systemコマンドを実行したら、
7つの質問に答えて、
ログインパスワードを入れて、
reboot。
こ
れ
だ
け
7つの質問:
Would you like to continue? (Yes/No) [Yes]: (ENTER)
Partition (Auto/Union/Parted/Skip) [Auto]: (ENTER)
Install the image on? [sda]: (ENTER)
Continue? (Yes/No) [No]: Yes
How big of a root partition should I create? (1000MB - 8590MB) [8590]MB: (ENTER)
Which one should I copy to sda? [/opt/vyatta/etc/config/config.boot]: (ENTER)
Which drive should GRUB modify the boot partition on? [sda]: (ENTER)
18
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
まとめ
19
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
Vyattaとは - まとめ
実体は、

Debianをベースにして、
OSSやVyatta社独自のソフトウェアを追加して、
さらに独自のUI(CLI、GUI、、、)を追加した、

ソフトウェアルータ



Debianパッケージの形式で追加

本質は、
IA機を、ルータのアプライアンス機に変えるおまじない
20
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30
http://www.ate-mahoroba.jp/
21
Copyright (C) 2010 Mahoroba Kobo, Inc. All Rights Reserved.
2010-09-30