Submit Search
AS45679 on FreeBSD
0 likes
1,151 views
T
Tomocha Potter
AS45679 in FreeBSD
Internet
Read more
1 of 24
Download now
Download to read offline
1
2
Most read
3
Most read
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Most read
23
24
More Related Content
PDF
BGP Unnumbered で遊んでみた
akira6592
PDF
大規模DCのネットワークデザイン
Masayuki Kobayashi
PDF
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
PDF
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
PDF
さくらのVPS で IPv4 over IPv6ルータの構築
Tomocha Potter
PDF
Scapyで作る・解析するパケット
Takaaki Hoyo
PDF
自宅サーバラックの勧め BGP4編
h-otter
PDF
インターネットの仕組みとISPの構造
Taiji Tsuchiya
BGP Unnumbered で遊んでみた
akira6592
大規模DCのネットワークデザイン
Masayuki Kobayashi
パケットキャプチャの勘どころ Ssmjp 201501
稔 小林
IPv4/IPv6 移行・共存技術の動向
Yuya Rin
さくらのVPS で IPv4 over IPv6ルータの構築
Tomocha Potter
Scapyで作る・解析するパケット
Takaaki Hoyo
自宅サーバラックの勧め BGP4編
h-otter
インターネットの仕組みとISPの構造
Taiji Tsuchiya
What's hot
(20)
PDF
スイッチ・ルータのしくみ
ogatay
PDF
閉域網接続の技術入門
Masayuki Kobayashi
PPTX
フロー技術によるネットワーク管理
Motonori Shindo
PDF
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
VirtualTech Japan Inc.
PDF
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
PDF
Ethernetの受信処理
Takuya ASADA
PDF
大規模サービスを支えるネットワークインフラの全貌
LINE Corporation
PDF
ISPの向こう側、どうなってますか
Akira Nakagawa
PDF
TCAMのしくみ
ogatay
PDF
本当は楽しいインターネット
Yuya Rin
PDF
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
PDF
ロードバランスへの長い道
Jun Kato
PDF
TLS 1.3 と 0-RTT のこわ〜い話
Kazuho Oku
PPTX
Slurmのジョブスケジューリングと実装
Ryuichi Sakamoto
PDF
IPv6マルチプレフィックスの話
YasunobuToyota
PDF
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
PPTX
自宅インフラの育て方 第2回
富士通クラウドテクノロジーズ株式会社
PPTX
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
PPTX
本当は恐ろしい分散システムの話
Kumazaki Hiroki
PDF
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Kiyotaka Doumae
スイッチ・ルータのしくみ
ogatay
閉域網接続の技術入門
Masayuki Kobayashi
フロー技術によるネットワーク管理
Motonori Shindo
知っているようで知らないNeutron -仮想ルータの冗長と分散- - OpenStack最新情報セミナー 2016年3月
VirtualTech Japan Inc.
macOSの仮想化技術について ~Virtualization-rs Rust bindings for virtualization.framework ~
NTT Communications Technology Development
Ethernetの受信処理
Takuya ASADA
大規模サービスを支えるネットワークインフラの全貌
LINE Corporation
ISPの向こう側、どうなってますか
Akira Nakagawa
TCAMのしくみ
ogatay
本当は楽しいインターネット
Yuya Rin
アーキテクチャから理解するPostgreSQLのレプリケーション
Masahiko Sawada
ロードバランスへの長い道
Jun Kato
TLS 1.3 と 0-RTT のこわ〜い話
Kazuho Oku
Slurmのジョブスケジューリングと実装
Ryuichi Sakamoto
IPv6マルチプレフィックスの話
YasunobuToyota
PGOを用いたPostgreSQL on Kubernetes入門(PostgreSQL Conference Japan 2022 発表資料)
NTT DATA Technology & Innovation
自宅インフラの育て方 第2回
富士通クラウドテクノロジーズ株式会社
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Geekなぺーじ ネットワーク技術者ではない方々向けIPv6セミナー2
Kiyotaka Doumae
Ad
Similar to AS45679 on FreeBSD
(20)
PPT
20140310 fpgax
funadasatoshi
PDF
Trema day 1
ykuga
PPTX
自宅スケーラブル・ファイルシステムのご紹介
Kentaro Mitsuyasu
PDF
Info talk2013
Koichi Ise
PDF
余ったPCをルータに変える、ソフトウェアルータ「SEIL/x86」
IIJ
PDF
さくらのクラウドインフラの紹介
SAKURA Internet Inc.
PDF
EthernetやCPUなどの話
Takanori Sejima
PDF
L2 over L3 ecnaspsulations
Motonori Shindo
PDF
Wireguard 実践入門
Kazuhiro Nishiyama
PDF
Linux packet-forwarding
Masakazu Asama
PDF
A story of porting OpenBSD/luna88k
Kenji Aoyama
PDF
Open-FCoE_osc2011tokyofall_20111119
metamd
PDF
Xenとzfsで作る家庭内VDIサーバ
zgock
PDF
Janog60 yosou
Ken SASAKI
PPTX
545人のインフラを支えたNOCチーム!
Masayuki Kobayashi
PDF
FPGAで作るOpenFlow Switch (FPGAエクストリーム・コンピューティング 第6回) FPGAX#6
Kentaro Ebisawa
PPTX
自宅ラック勉強会 4.0/2014 LT資料
mempad
PDF
20apr2012 kernelvm7-main
Shotaro Uchida
PDF
Oss dev-04
Kohei KaiGai
PDF
SDN Japan: ovs-hw
ykuga
20140310 fpgax
funadasatoshi
Trema day 1
ykuga
自宅スケーラブル・ファイルシステムのご紹介
Kentaro Mitsuyasu
Info talk2013
Koichi Ise
余ったPCをルータに変える、ソフトウェアルータ「SEIL/x86」
IIJ
さくらのクラウドインフラの紹介
SAKURA Internet Inc.
EthernetやCPUなどの話
Takanori Sejima
L2 over L3 ecnaspsulations
Motonori Shindo
Wireguard 実践入門
Kazuhiro Nishiyama
Linux packet-forwarding
Masakazu Asama
A story of porting OpenBSD/luna88k
Kenji Aoyama
Open-FCoE_osc2011tokyofall_20111119
metamd
Xenとzfsで作る家庭内VDIサーバ
zgock
Janog60 yosou
Ken SASAKI
545人のインフラを支えたNOCチーム!
Masayuki Kobayashi
FPGAで作るOpenFlow Switch (FPGAエクストリーム・コンピューティング 第6回) FPGAX#6
Kentaro Ebisawa
自宅ラック勉強会 4.0/2014 LT資料
mempad
20apr2012 kernelvm7-main
Shotaro Uchida
Oss dev-04
Kohei KaiGai
SDN Japan: ovs-hw
ykuga
Ad
AS45679 on FreeBSD
1.
AS45679の実態 FreeBSD WorkShop 2022/06/24 Tomocha
< tomo [at] tomocha.net >
2.
AS45679の歴史 • 2009年割当 • INTEC(WIDE),
SAKURA, Hurricane, Convivial-Net, etc… との接続 • IPv6経路交換を前提、フルルートニヤニヤ。 • PA/PIアドレスは無し、下位組織としてアドレスをアサインしてもらう • IPv6 over IPv4 tunnel • 2014年 SoftEther社と接続 • IPv4 + IPv6 • Linux + Quagga • NGN閉域折りし • 2021年 • IPv4/IPv6 特殊用途PIアドレスの割振を受ける • クラウド型トランジットを受ける(Vultr/xTom) • 2022年 • Upstream 増強計画中(10G/25GxN本クラスの専用線、DCとのWDMは構築済み)
3.
AS45679コンセプト • 旧世代のサーバーで構築 • ソフトウェアBGPルータで10Gbpsの性能 •
実際には8Gbpsぐらいを目標 • E5-26xx Ivy Bridge 世代以降のCPUを採用 • 最近とても安いよ? ebayで破格。DDR3も安くなったよ。お下がりにはちょうどよい。 • Full RouteをN本扱う • 想定は3本以上 • 拠点冗長 • OS/BGPDはすべて異なる組み合わせ • 商用に耐えうる耐障害性 • MTU 1500
4.
物理構成(概要) EtherIP over Flets#1 EtherIP
over Flets#2 IX2215 IX2215 IX2215 IX2215 SW SW 関西 関東 NGN VM1 VM2 VM3 VM4 TransitE (Vultr) RT 1 RT 2 RT 3 RT 4 TransitD (xTom) TransitB TransitC TransitA
5.
論理構成(概要) 関西 関東 Vultr (FreeBSD +
FRR) xTom (Debian + FRR) TransitA RT1 (Debian + FRR) RT2 (予定) RT3 ( F12 + FRR ) RT4 (予定) PeerA Hurricane (IPv6 Only) BBIX IPIP tunnel SoftEther (MTU1500) EtherIP (MTU1500) Full Route Transit NGN IPv6 over IPoE IPv6 over IPv4 PPPoE 計画中
6.
BGPルータのスペック • CPU: 4vCPU~8vCPU •
MEM: 8GB~16GB • NIC: Mellanox Dual Port 10G x1 • OS: FreeBSD / Debian • BGPD: FRR, etc..(検討中) • MRT dumpはやりたい(希望) • たくさんのストレージ • VMWare上のvm • ベアメタルが理想だが電気代が… ゴールは、地方ISPクラスが十分に使える程度の性能
7.
FreeBSD12はまりどころ(Kernel) • EtherIPが動かない • FreeBSD9ぐらいから動いてないらしい https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256820 https://www.seirios.org/seirios/dokuwiki/doku.php?id=tweet:2021:0530_01 •
FreeBSD12 (パッチは取込予定) • FreeBSD13 (パッチは取込予定)
8.
FreeBSD12はまりどころ(Kernel) • Full Routeを投入すると… •
netstat: sysctl: net.route.0.0.dump.0: Cannot allocate memory • netstat –rn を根気よく。 • 一回目のシステムコールで経路分のメモリを確保 2回目のシステムコールで実際にデータを表示しようとして、経路数に大幅に差分 があった場合、メモリ不足になる • FIBに入れる経路上限、基準がわからず • zebraからFIBに経路を一回で入れるキューの単位。Full Tableを受けた瞬間、まと まったキューが確保されなければならないらしい (by ほ。さん) /boot/loader.conf net.route.netisr_maxqlen=204800
9.
FreeBSD12での固有トラブル(FRR7.5.1) • FRR 7.5.1 •
bgpd メモリリークで数日でcore dump • bgpd の CPUが常に100% • Full Route 1 pathだと発生しないように見える • 1 Core分のCpu sys が常に100%, 多量の context switching, High LoadAverage • おそらく、正しくFIBに入れれずエラーになった経路があるのではないか? • 入ってる経路もある? • 失敗が原因で負荷が上がってる可能性
10.
FreeBSD12での固有トラブル(FRR8.x) • FRR 8.x
動かない • ビルドができない • libyang2 が ports にないので、別途準備が必要 • Netlink回りの不具合 • F11から実装が変わったが、メモリの確保の実装が雑でCoredump (by hrs-san) • 数千経路も FIB に納めれない • SoftEther 仮想IF、VLANが生えたとき、frrが認識できない • zebraの再起動が必要 • zebra経由でIPアドレス操作ができない • 削除・追加が反映されない • zebraの再起動でも反映されない • watchdogは鬼門 • bgpd の負荷が上がると… バッツン process 再起動 • PAGERの変更 ( bugではないが…&仕様変更 ) • VTYSH_PAGER=less → setenv VTYSH_PAGER "more -e“ いずれも不具合系はLinux(Debian) + FRRは問題無し。 FreeBSD12 + FRR8.x 環境でhrs sanの協力により多く修正。 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=260950
11.
SoftEtherを使った仮想NIC問題 • Linkは上がっているように見えて実は半落ちしてる問題 • 経路ループが発生… •
IGPは上がってBGPセッションは張られているが packet の fowardingされ なくなる • netstat –r レベルでは正常に見える • 原因不明(要調査) • zebraがまだIf/Addrが完璧に認識できない • 動くこともあれば動かないことも • 発生パターンの調査 • zebra回りに修正がまだ必要かも…
12.
SoftEtherを使った仮想NIC問題(解決編) Linuxで VPN Server
を建てて、 vlanにBridgeする VMwareが動いてるので、vm建て放題だし… ルータから見たら、vlan interface をつくって、 point to point interface として扱えばよいし楽だよね…
13.
物理構成(概要) ver 1.0 EtherIP
over Flets#1 EtherIP over Flets#2 IX2215 IX2215 IX2215 IX2215 SW SW 関西 関東 NGN VM1 VM2 VM3 VM4 RT 1 RT 2 RT 3 RT 4 TransitE (Vultr) TransitD (xTom) TransitB TransitC TransitA
14.
物理構成(概要) ver 2.0 SE 1 SE 2 SE 3 SE 4 EtherIP
over Flets#1 EtherIP over Flets#2 IX2215 IX2215 IX2215 IX2215 SW SW 関西 関東 NGN VM1 VM2 VM3 VM4 RT 1 RT 2 RT 3 RT 4 TransitE (Vultr) TransitD (xTom) TransitB TransitC TransitA
15.
構成の結論 OS標準のTunnel以外は分ける • Tunnelの足の経路のばたつき • Static
Routeを書き忘れたり • VPN/Tunnel収容ルータは専用に作る • 意外とCPU食うので割り込みが… • AffinityでCPU coreを固定するとクラッシュするプロセス… • 起動時に失敗したり • OS標準実装のTunnelだと、MTU1500にならないし…
16.
おまけ(1) FreeBSDではないお話
17.
FRR7.5.x の不具合(1) • route-map
が正しく動作しない • MED • 付与されているように見えて、適用した値が広報されないとか… • prefix-list • route-map が deny で、 prefix-list が permit/deny だと動かないとか… • 実装が逆だったり、二重否定は動かなかったり(記憶曖昧) • bogon-filter を書くときに苦労した • シーケンス番号が並ばない、ソートされない • ip prefix-list PL_LIST1 seq 100 … ip prefix-list PL_LIST1 seq 200 … ip prefix-list PL_LIST1 seq 150 … etc • Config が読みにくい orz そういえば、2014年頃、 vyatta / Quagga で試したときも正しく動かなかったな…
18.
FRR7.5.x の不具合(2) • bgp_read_packet
error • Loopback で IBGP が張れない • FRR7.0.xからのバグ • https://github.com/FRRouting/frr/issues/4438
19.
クラウド型トランジット 特徴 • VPSベースの固定vCPU、固定MEM、転送量課金(TB単位での契約) • 1vCPU,
MEM 2GB, bandwidth 2TB (10G IF) 10ドルぐらい • 持ち込みアドレス、持ち込みAS対応 • BGP Full Table 対応 • IX接続 可能 • IPv6に対応、IPoEにてTunnelを作成 • IPoEを契約するISP選択 • 同じVNEであっても、ローミング提供のISPを契約すると、卸先ISP全体での公平 制御される可能性がある • 同じIPoE/VNEでも契約先が重要 • おすすめはTransix(IIJ経由)もしくはSoftbank
20.
クラウド型トランジット 特徴(続き) • FreeBSDにも対応しており、海外では割と主流 • テラ(ギガ)が不足したら自動的に落ちる(通信が止まるはず) •
必要だったらテラを買えばよい • 必要だったら複数インスタンス契約すればよい • ECMP ロードバランスすれば冗長性も可用性も上がる 円安ぅ。。。。反対(>_<) BGPの特徴を最大限に活用
21.
クラウド型トランジット • BGP対応のロケーションが限られる • MEM
2GBだとメモリが厳しい • 意図的にswapに逃がす • FIBに入れない • Loopbackなどの経路はIGP(OSPF)で経路交換、FIBに投入 • 自PIアドレスの経路、その他内部経路もFIBに投入(BGP) • 経路ループ防止のため • Null/経路生成はコアルータや経路生成ルータのみ • ブラックホール防止のため • それ以外は、Upstreamにデフォルトルート • best-path 経路計算は不要 • コンバージェンスも気にしなくてよい ip protocol bgp <route-map>
22.
クラウド型トランジット(苦難編) • BGPセッション… • とあるVPSは同一ネットワーク上にBGPルータが別に存在する •
FIBにいれずにデフォゲに投げていたら突然通信できなくなる • Source address validation を入れたらしい… → 大障害に → メモリ増強して対応orz • eBGP multihopする事業者 • デフォゲになげていたらOK • BGP communityが提供されない • そら、ローカルで使う想定だしな… • マルチリージョンで使うと海外の海外に回ったり… • 日本国内から太平洋横断して帰ってくるとか • 力の強いトランジットを仕入れているとあるある… • AS6939(Hurricane Electric) こわい
23.
クラウド型トランジット • Vultr • https://www.vultr.com/ja/features/bgp/ •
xTom • https://xtom.com/vps/ • List of IPv6 tunnel brokers • https://en.wikipedia.org/wiki/List_of_IPv6_tunnel_brokers
24.
最後に hrsさん、ほ。さん、kozukaさん、多大な協力ありがとうござ いました。 時間が出来次第、ほかのbgpd(BIRD)も投入していきます。
Download