EdgeRouterLiteを使ってSite-to-Site VPNを張る
Last-modified: Sun, 24 Sep 2017 15:44:22 JST (2634d)
Top > EdgeRouterLiteを使ってSite-to-Site VPNを張る
AzureとSite-to-Site VPNをEdgeRouterLightで張ってみました。
ネットワーク的にはこんな感じです。
一般家庭なので光ルータの背後にEdgeRouterを設置します。
このままだとVPNを張ることができないので、EdgeRouterにポートフォワードする設定をしておきます。
Azureの仮想ネットワーク構築
- Azureポータルより、仮想ネットワークを構築します。この時かならず(クラシック)を選択します。
- アドレス空間、サブネットアドレス範囲は対向先と被らなければ適当でいいです。
ここではデフォルトのままにしました。 - 仮想ネットワークが構築されましたら、概要タブの中にあるVPN接続よりVPNを作成します。
- 新しいVPN接続より、サイト対サイトを選択。ローカルサイトをクリックし、EdgeRouter側のネットワーク情報を設定します。
VPNゲートウエイのIPアドレスのところには、光ルータのグローバルIP(XXX.XXX.XX.XX)を設定。
クライアントアドレスはEdgeRouterのLAN側サブネット(192.168.100.0/24)を設定します。 - ゲートウエイをすぐに作成するにチェックを入れ、ルーティングの種類を動的に設定します。
- サブネットをクリックし、ゲートウエイ用サブネットを切ります。ここでもデフォルト設定にしました。
- しばらくすると(40分くらい?)ゲートウエイが作成されます。
作成されると、グローバルIPが割り当てられますので、メモっておきます。
Site-To-Site VPNの作成
- 作成されたVPN接続をクリックします。
- VPNデバイススクリプトをクリックし、設定ファイルをダウンロードします。
- 設定ファイルを開き、中に書いてある「SharedSecret」の文字列がVPN接続に必要な共通パスワードです。EdgeRouterの設定で必要になりますのでメモっておきます。
- なお、旧ポータルでは、そんな面倒なことをしなくても、ちゃんと「キーの管理」というボタンで見れます。
EdgeRouterLiteの設定
基本設定
ここでは、EdgeRouterLiteの初期設定状態から設定します。
EdgeOS 1.9.7で検証してあります。
- インターフェースを設定します。ここではeth0に192.168.24.5(WAN)、eth1に192.168.100.1(LAN)を割り当てます
# set interfaces ethernet eth0 address 192.168.24.5/24 # delete interfaces ethernet eth0 address 192.168.1.1/24 # set system gateway-address 192.168.24.1 # set interfaces ethernet eth1 address 192.168.100.1/24
- DNSセット
# set system name-server 8.8.8.8 # set service dns forwarding listen-on eth1 # set service dns forwarding system
- NATをセット
# set service nat rule 5000 outbound-interface eth0 # set service nat rule 5000 type masquerade
- 面倒なのでDHCPでLAN側アドレスを配布
# set service dhcp-server shared-network-name dhcp-eth1 subnet 192.168.100.0/24 start 192.168.100.100 stop 192.168.100.200 # set service dhcp-server shared-network-name dhcp-eth1 subnet 192.168.100.0/24 default-router 192.168.100.1 # set service dhcp-server shared-network-name dhcp-eth1 subnet 192.168.100.0/24 dns-server 192.168.100.1 # set service dhcp-server shared-network-name dhcp-eth1 subnet 192.168.100.0/24 lease 86400
- タイムゾーン
# set system time-zone 'Asia/Tokyo'
- ファイアーウォール
# set firewall all-ping 'enable' # set firewall broadcast-ping 'disable' # set firewall ipv6-receive-redirects 'disable' # set firewall ipv6-src-route 'disable' # set firewall ip-src-route 'disable' # set firewall log-martians 'enable' # set firewall name WAN_IN default-action 'drop' # set firewall name WAN_IN description 'WAN to internal' # set firewall name WAN_IN rule 10 action 'accept' # set firewall name WAN_IN rule 10 state established 'enable' # set firewall name WAN_IN rule 10 state related 'enable' # set firewall name WAN_IN rule 10 description 'Allow established/related' # set firewall name WAN_IN rule 20 action 'drop' # set firewall name WAN_IN rule 20 state invalid 'enable' # set firewall name WAN_IN rule 20 description 'Drop invalid state' # set firewall name WAN_OUT default-action 'drop' # set firewall name WAN_OUT description 'internal to WAN' # set firewall name WAN_OUT rule 10 action 'accept' # set firewall name WAN_OUT rule 10 description 'Allow internal to WAN' # set firewall name WAN_LOCAL default-action 'drop' # set firewall name WAN_LOCAL description 'WAN to router' # set firewall name WAN_LOCAL rule 10 action 'accept' # set firewall name WAN_LOCAL rule 10 state established 'enable' # set firewall name WAN_LOCAL rule 10 state related 'enable' # set firewall name WAN_LOCAL rule 10 description 'Allow established/related' # set firewall name WAN_LOCAL rule 20 action 'drop' # set firewall name WAN_LOCAL rule 20 state invalid 'enable' # set firewall name WAN_LOCAL rule 20 description 'Drop invalid state' # set firewall receive-redirects 'disable' # set firewall send-redirects 'enable' # set firewall source-validation 'disable' # set firewall syn-cookies 'enable' # set interfaces ethernet eth0 firewall in name 'WAN_IN' # set interfaces ethernet eth0 firewall local name 'WAN_LOCAL' # set interfaces ethernet eth0 firewall out name 'WAN_OUT'
- Azure Site-To-Site VPN用の設定をします。104.215.62.230の箇所は、AzureのゲートウエイIPに合わせてください。
# set vpn ipsec ipsec-interfaces interface eth0 # set vpn ipsec auto-firewall-nat-exclude enable # set vpn ipsec nat-traversal enable # set vpn ipsec esp-group esp-azure compression disable # set vpn ipsec esp-group esp-azure lifetime 3600 # set vpn ipsec esp-group esp-azure mode tunnel # set vpn ipsec esp-group esp-azure pfs disable # set vpn ipsec esp-group esp-azure proposal 1 encryption aes256 # set vpn ipsec esp-group esp-azure proposal 1 hash sha1 # set vpn ipsec ike-group ike-azure key-exchange ikev2 # set vpn ipsec ike-group ike-azure ikev2-reauth no # set vpn ipsec ike-group ike-azure lifetime 28800 # set vpn ipsec ike-group ike-azure proposal 1 dh-group 2 # set vpn ipsec ike-group ike-azure proposal 1 encryption aes256 # set vpn ipsec ike-group ike-azure proposal 1 hash sha1 # set vpn ipsec site-to-site peer 104.215.62.230 description Azure # set vpn ipsec site-to-site peer 104.215.62.230 authentication mode pre-shared-secret # set vpn ipsec site-to-site peer 104.215.62.230 authentication pre-shared-secret <共通パスワード> # set vpn ipsec site-to-site peer 104.215.62.230 connection-type initiate # set vpn ipsec site-to-site peer 104.215.62.230 default-esp-group esp-azure # set vpn ipsec site-to-site peer 104.215.62.230 ike-group ike-azure # set vpn ipsec site-to-site peer 104.215.62.230 ikev2-reauth inherit # set vpn ipsec site-to-site peer 104.215.62.230 local-address any # set vpn ipsec site-to-site peer 104.215.62.230 tunnel 1 allow-nat-networks disable # set vpn ipsec site-to-site peer 104.215.62.230 tunnel 1 allow-public-networks disable # set vpn ipsec site-to-site peer 104.215.62.230 tunnel 1 esp-group esp-azure # set vpn ipsec site-to-site peer 104.215.62.230 tunnel 1 local prefix 192.168.100.0/24 # EdgeRouteのLAN側サブネット # set vpn ipsec site-to-site peer 104.215.62.230 tunnel 1 remote prefix 10.0.0.0/16 # Azure側のサブネット
設定が終わったら、忘れす# commit # save
しましょう。
Azureとの接続設定
- 作成されたVPN接続をクリックします。
- VPN接続をクリックします。
- 上にある接続をクリックします。
- EdgeRouterを再起動します。
接続ができたかを確認します。ubnt@ubnt:~$ show vpn ipsec status IPSec Process Running PID: 1358 1 Active IPsec Tunnels IPsec Interfaces : eth0 (192.168.24.5/24)
こんな感じで出てば接続できています。
Azureコンパネ上ではこのようになります。 旧ポータルだとわかりやすく表示されます。 EdgeRouterからAzure内にある仮想マシンにPINGを飛ばしてみます。ubnt@ubnt:~$ ping 10.0.0.4 PING 10.0.0.4 (10.0.0.4) 56(84) bytes of data. 64 bytes from 10.0.0.4: icmp_req=1 ttl=63 time=19.5 ms 64 bytes from 10.0.0.4: icmp_req=2 ttl=63 time=20.4 ms 64 bytes from 10.0.0.4: icmp_req=3 ttl=63 time=20.2 ms 64 bytes from 10.0.0.4: icmp_req=4 ttl=63 time=19.4 ms 64 bytes from 10.0.0.4: icmp_req=5 ttl=63 time=19.9 ms
ただし、この仮想マシンは上で作成した仮想ネットワークに所属していないとVPN経由で疎通ができませんので注意です。
Counter: 808,
today: 2,
yesterday: 1
このページの参照回数は、808です。