#author("2025-04-15T01:47:44+00:00","default:iseki","iseki")
* Network Programing 演習
#author("2025-04-15T01:48:01+00:00","default:iseki","iseki")
* Network Programming 演習

** 2020 後期:新型コロナの影響でCISCO実機を使用できない場合. [#kcd7ecd1]
- [[VyOS]] を使用
- Routing 演習



*** 学生の自宅 (CentOS8)[#r76ff3ac]
- VMWare 上で [[CentOS8]] を動かす(前期に構築済み)
- CentOS8 で [[Docker]] を利用して [[VyOS]] を動かす.
- 最終的に,自宅の Linux(CentOS8)に,大学内からアクセス可能な固定IP環境を構築する.DNSも作る


**** VyOS [#r7816c42]
- [[VyOS]] 内で [[OpenConnect]] を起動して,大学にトンネルを掘る.
-- Dcoker 内で openconnect を動かす(またはDNSを引く)には,ホスト側で firewalld を止めた方が良い.
--- 後で Firewall の条件をチェックする.
-- Docker のイメージが動いている最中に firewalld を止めて駄目 => Dockerを再起動
- [[OpenConnect]] による VPNは point-to-point で /32 の通信路ができ,ブロードキャストアドレスが存在しないので,''RIPの情報を流せない''
-- OSPF を流して,大学入り口で処理してもらう.
-- RIP が使えない原因に気が付くのに1日かかった!


**** Command [#j6db0d7a]

- Docker
 # docker network create --driver=bridge --subnet=172.22.240.8/29 netp_bridge
 # docker images
 # docker run -d --name vyos --privileged -v /lib/modules:/lib/modules --net netp_bridge vyos-1.3r:200921 /sbin/init
 # docker exec -it vyos vbash 
 (コンテナ内) # openconnect -b 202.26.###.###
 (コンテナ内) # exit
 # docker exec -it --user 1003 vyos vbash 
 (コンテナ内) $ ip a
 (コンテナ内) $ show interfaces
 (コンテナ内) $ show configuration
 (コンテナ内) $ configure
 (コンテナ内) # set protocols ospf parameters router-id 172.22.240.8
 (コンテナ内) # set protocols ospf area 0 network 172.22.240.8/29
 (コンテナ内) # set protocols ospf area 0 network 172.22.104.0/24
 (コンテナ内) # show protocols
 (コンテナ内) # commit
 (コンテナ内) # run show configuration
 (コンテナ内) # run show ip ospf neighbor
 (コンテナ内) # run ping 172.24.1.1

- show protocol 
 protocols {
    ospf {
        area 0 {
            network 172.22.240.8/29
            network 172.22.104.0/24
        }
        parameters {
            router-id 172.22.240.8
        }
    }
 }


- ホスト側の static ルーティング 
 # ip route
 # route add -host 202.26.###.### gw 192.168.206.2    (openconnect の通信路)
 # route add default gw 172.22.240.10 (VyOSを default router とする)
-- 間違えると,openconnect が止まる.
-- 元の default route は,誤作動する様なら消す (rout del default gw 192.168.206.2)


*** 大学の入口 (CentOS7) [#d939685a]
- [[OpenConnect]] サーバ (ocserv) を動かす.
- [[Quagga]] で RIPと OSPFを動かす.
- OSPFの情報(学生の自宅のネットワーク情報)は redistribute ospf で RIPに取り込んで学内に流す.
- vpns# (tun0)の情報は  redistribute connect で RIPに取り込んで学内に流す.

 router rip
  version 2
  redistribute connected
  redistribute ospf
  network 202.26.###.###/28
 !
 router ospf
  ospf router-id 202.26.###.###
  network 172.22.104.0/24 area 0.0.0.0
  network 202.26.###.###/28 area 0.0.0.0
 !

*** Network 図 [#w5435870]
        +---------------+ tun0(172.22.104.81)        (172.22.104.1)vpns# +--------------+
        | Docker(VyOS)  | OpenConnect <--------------------> OpenConnect |   CentOS7    |
        |               |                                                |              | <-----> 大学内部
        | 172.22.240.10 |                                                | Quagga (FRR) |
 +------+---------------+                                                +--------------+
 |        172.22.240.9  |
 |                      |
 | VMWare (CentOS8)     |                                                
 +-----------------(NAT)+                                                
 |       Windows        |
 +----------------------+
        自宅

トップ   編集 差分 履歴 添付 複製 名前変更 リロード   新規 ページ一覧 検索 最終更新   ヘルプ   最終更新のRSS