くらめその情シス:YAMAHAルーターでAWS向けのURLベースルーティングやってみた

2021.03.12

はじめに

こんにちは、情シスでアノテーションの飯島です。

今回はYAMAHA RTX1210ルーターを使ってのAWSへのURLベースルーティング設定について記載していきます。 前提としての当社ネットワーク構成については以下の記事をご確認ください。

記事内でも紹介しているように、当社では保守対象であるAWSへのルーティングと、その他のインターネットへのルーティングを拠点ルーターで振り分けております。

IPアドレスベースのルーティング

AWSの各サービスのIPアドレス範囲についてはAWSで公開しているjsonファイルから確認できます。保守対象AWSへの通信を行うIPアドレスを集約するため、拠点オフィスのルーターでは、公開されているAWSのIPアドレスレンジのうち、S3を除く全てのサービスのIPアドレスレンジをElastic IP側にルーティング(下図の経路A)しています。(Elastic IP については、上記の基幹ネットワークについての記事で紹介しているのでご参照ください。)

【YAMAHA ルーターのコンフィグサンプル(ルーティング部分のみ)】

ip route default gateway pp 1
ip route 3.xxx.0.0/14 gateway tunnel 1 keepalive 1 gateway tunnel 2 weight 0 < AWSのIPレンジをトンネル1へルーティング
ip route 3.xxx.0.0/14 gateway tunnel 1 keepalive 1 gateway tunnel 2 weight 0 < AWSのIPレンジをトンネル1へルーティング
ip route 3.xxx.0.0/14 gateway tunnel 1 keepalive 1 gateway tunnel 2 weight 0 < AWSのIPレンジをトンネル1へルーティング
ip route 3.xxx.0.0/14 gateway tunnel 1 keepalive 1 gateway tunnel 2 weight 0 < AWSのIPレンジをトンネル1へルーティング
<省略>
ip keepalive 1 icmp-echo 5 5 xxx.xxx.xxx.xxx < Tunnel1のKeep Alive、1がダウンしたら2へルーティング

IPベースのデメリット

この設定の問題点としては以下の2点があります。

  • AWSのIPアドレスレンジの量が多い
  • AWSのIPアドレスレンジの更新間隔が短い

AWSすべての幅広いIPアドレスレンジをカバーできるメリットがある分、IPアドレスレンジが増える頻度が高いため、必然的にルーティングを追加する頻度が高くなるデメリットがあります。特に昨年以降は、jsonファイルに追加されるIPアドレスレンジが格段と増えてきており、ゆうに500行を超える状況です。

URLベースのルーティング

この終わらないルーティング追加とのイタチごっこを改善するため、次の設定を確認しました。

【YAMAHA ルーターのコンフィグサンプル(ルーティング部分のみ)】

ip route default gateway pp 1 filter 1002 gateway tunnel 1 filter 1001 keepalive 1 gateway tunnel 2 filter 1001 weight 0 gateway pp 1
ip filter 1001 pass * amazonaws.com,*.amazonaws.com,console.aws.amazon.com,*.console.aws.amazon.com * * *
ip filter 1002 pass * s3.ap-northeast-1.amazonaws.com,*.s3.ap-northeast-1.amazonaws.com * * *
  • URLにamazonaws.com またはconsole.aws.amazon.comが含まれる通信:経路Aへ
  • URLにs3.ap-northeast-1.amazonaws.comが含まれる通信(東京リージョンのS3サービス)とその他すべての通信:経路Bへ

YAMAHA RTX1210ルーターはをFQDNベースでのルーティングをサポートしています。URLであれば簡単に変更や追加がないため、追加作業もほとんど発生しません。また、今まで500行以上あったルーティングが数行にまとまり、ルーティングの追加も容易であり、管理は非常にシンプルになります。

URLベースのデメリット

情シスの管理側としてメリットのあるURLベースでのルーティングですが、ユーザー側に次のデメリットがあります。

  • SSHなどで直接IPアドレスを指定する通信が経路Bになる

直接IPアドレスを指定する通信の場合は、AWS Systems Manager Session Manager (SSM)を利用してもらうか、プロキシ設定をしてもらう必要があるため、現在のIPアドレスでのルーティングとまったく同じ環境にはなりません。もし適用する場合には、ユーザーとの相談が必要になります。

最後に

リモートワークが広がってオフィスに人が少なっていますが、人が戻ってきたときにオフィスが使い難くなっていることがないように、ユーザーと相談しながら、オフィスを気持ちよく利用できる環境を目指していきたいと考えています。

最後までお読みいただきありがとうございました。また次の記事で!