Calico Kubernetes the hard way v2 How tunl0 works

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску


Как работает IP-in-IP туннель в Calico

Это один из вариантов конфигурации Calico.
Эта статья появилась так-как настройка туннеля не очень-то очевидна.

Схема сети

  • Показаны только 2 ноды, для простоты.
  • 192.168.122.0/24 - физическая сеть



+----------------------------------------+                      +----------------------------------------+ 
| Host: worker1                          |                      | Host:  worker2                         |
|    +---------------------+             |                      |    +---------------------+             |
|    | POD1                |             |                      |    | POD2                |             |
|    |                     |             |                      |    |                     |             |
|    |  10.244.235.132/32  |             |                      |    |  10.244.189.171/32  |             |
|    +---eth0--------------+             |                      |    +---eth0--------------+             |
|         |                              |                      |         |                              |
|         |                              |                      |         |                              | 
|    caliXXXX                            |                      |    caliYYYY                            |
|     На этом интерфейсе НЕТ ip адреса   |                      |     На этом интерфейсе НЕТ ip адреса   |
|                                        |                      |                                        |
|  [ tunl0 ] 10.244.235.136/32           |                      |  [ tunl0 ] 10.244.189.71/32            |
|                                        |                      |                                        |
+--[ eth0  ]-----------------------------+                      +--[ eth0  ]-----------------------------+
    192.168.122.2/24                                                 192.168.122.3/24
      |                                                               |
      +---------------------------------------------------------------+


Настройки интерфейса tunl0

Если не особо вдумываться, то в настройке интерфейса (одинаковом на всех нодах, с одинаковыми настройками) нет ничего необычного

ip -d link show dev tunl0
2: tunl0@NONE: <NOARP,UP,LOWER_UP> mtu 1480 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/ipip 0.0.0.0 brd 0.0.0.0 promiscuity 0
    ipip remote any local any ttl inherit nopmtudisc addrgenmode eui64 numtxqueues 1 numrxqueues 1 gso_max_size 65536 gso_max_segs 65535

Однако, если смотреть внимательно то вызывает вопрос вот эта часть конфигурации

link/ipip 0.0.0.0 brd 0.0.0.0 promiscuity 0
ipip remote any local any 

* ip tunnel add mytun mode ipip remote 251.4.92.217 local 240.101.83.2

Ссылки

* https://habr.com/ru/post/48276/ * https://lartc.vger.kernel.narkive.com/XgcjFTGM/aw-onlink-option-for-ip-route * https://habr.com/ru/company/ruvds/blog/457386/ * https://habr.com/ru/post/48276/ * https://man7.org/linux/man-pages/man8/ip-link.8.html * https://developers.redhat.com/blog/2019/05/17/an-introduction-to-linux-virtual-interfaces-tunnels#ip6gre_and_ip6gretap * https://weril.me/ifconfig/ * https://www.oreilly.com/library/view/wireless-hacks/0596005598/ch04s13.html