IPSec на OpenVZ несколько IP-адресов, используя 127.0.0.2 на venet0

IPSec на OpenVZ несколько IP-адресов, используя 127.0.0.2 на venet0

У меня есть OpenVZ-бокс с включенным IPSec.

root@wa000:~# ipsec verify
Checking your system to see if IPsec got installed and started correctly:
Version check and ipsec on-path                                 [OK]
Linux Openswan U2.6.38/K2.6.32-042stab094.7 (netkey)
Checking for IPsec support in kernel                            [OK]
 SAref kernel support                                           [N/A]
 NETKEY:  Testing XFRM related proc values                      [OK]
    [OK]
    [OK]
Checking that pluto is running                                  [OK]
 Pluto listening for IKE on udp 500                             [OK]
 Pluto listening for NAT-T on udp 4500                          [OK]
Two or more interfaces found, checking IP forwarding            [FAILED]
Checking NAT and MASQUERADEing                                  [OK]
Checking for 'ip' command                                       [OK]
Checking /bin/sh is not /bin/dash                               [WARNING]
Checking for 'iptables' command                                 [OK]
Opportunistic Encryption Support                                [DISABLED]

Я установил openswan и xl2tpd для L2TP VPN. Когда я перезапускаю ipsec:

# service ipsec restart
ipsec_setup: Stopping Openswan IPsec...
ipsec_setup: Starting Openswan IPsec U2.6.38/K2.6.32-042stab094.7...
ipsec_setup: multiple ip addresses, using  127.0.0.2 on venet0

Он обнаружил 127.0.0.2, который, как я считаю, является локальным IP для обслуживания. Я хочу, чтобы он обслуживал мой публичный IP-адрес. Но я понятия не имею, как разрешить ipsec обслуживать правильный IP-адрес. Я гуглил, но, похоже, ничего не помогло.

Вот ifconfig -aвывод. Я заменил реальные IP на xxxx, yyyy и zzzz

# ifconfig -a
eth0      Link encap:Ethernet  HWaddr 00:18:51:69:44:e6  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

gre0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          NOARP  MTU:1476  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

gretap0   Link encap:Ethernet  HWaddr 00:00:00:00:00:00  
          BROADCAST MULTICAST  MTU:1476  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:118 errors:0 dropped:0 overruns:0 frame:0
          TX packets:118 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:18229 (18.2 KB)  TX bytes:18229 (18.2 KB)

venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:127.0.0.2  P-t-P:127.0.0.2  Bcast:0.0.0.0  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
          RX packets:126133 errors:0 dropped:0 overruns:0 frame:0
          TX packets:102937 errors:0 dropped:724 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:11322355 (11.3 MB)  TX bytes:40737353 (40.7 MB)

venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:x.x.x.x  P-t-P:x.x.x.x  Bcast:x.x.x.x  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

venet0:1  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:y.y.y.y  P-t-P:y.y.y.y  Bcast:y.y.y.y  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

venet0:2  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
          inet addr:z.z.z.z  P-t-P:z.z.z.z  Bcast:z.z.z.z  Mask:255.255.255.255
          UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

решение1

  1. Вы не указали, но из вашего ifconfig -aотрывка мы можем предположить, что вы используете ipsec внутри OpenVZ VE, а не аппаратного узла (HN). Просто чтобы убедиться — вы проверили ихрекомендациядля такого рода установки?
  2. Шаблоны OpenVZ для VE иногда просто сводят с ума. Я спросил разработчиков, зачем использовать диапазон IP-адресов 127/8 на интерфейсах без обратной связи, но они ответили: «Ну, мы не знаем, кто-то другой добавил его, и теперь он устарел». Полная чушь. Вы можете спокойно удалить этот «кладж» 127.0.0.2 из рассматриваемого интерфейса, он ничего не делает: ip ad del 127.0.0.2/32 dev venet0. Проблема в том, что при каждом перезапуске VE этот глупый хлам будет добавляться заново. Если вы управляете аппаратным узлом, вы можете задать шаблону что-то, что не вызовет их «кладж», содержащий сетевую конфигурацию. Если вы им не управляете, ну, обходной путь — поместить этот «ip ad del» во что-то вроде /etc/rc.localи перезапустить ipsec.

решение2

Отhttps://lists.openswan.org/pipermail/users/2010-June/018901.html

Когда Openswan запускается, похоже, что он выбирает первый IP-адрес на интерфейсе br0, чтобы объявить, что он выбирает. Если он когда-нибудь сделает неправильный выбор, как мне точно сказать, какой IP-адрес на каком интерфейсе? Или это просто объявление при открытии, и мне не нужно об этом беспокоиться?

Он привязывается ко всем адресам, которые настроены при запуске. Если адрес добавляется позже, в настоящее время pluto нужно указать перепривязать их с помощью "ipsec whack --listen"

ipsec_setup: несколько IP-адресов, использование 10.0.0.10 на br0

Сообщение немного сбивает с толку. Он будет "использовать" IP-адрес, с которого он получил пакет при ответе, и он будет использовать "ближайший" IP-адрес при инициализации при использовании "%defaultroute". Если будет использоваться IP или разрешенное имя хоста IP, если указано в conn.

Возможно, ваши интерфейсы OpenVZ не привязываются автоматически, поскольку они не существуют при запуске.

Кроме того, вы можете заставить его прослушивать только один IP-адрес, отредактировав файл /etc/ipsec.conf, добавив правильную спецификацию XX.XX.XX.XX или интерфейса venet0:X, используя директивы listen=XX.XX.XX.XXили interface=venet0:Xв config setupразделе.

http://linux.die.net/man/5/ipsec.conf

Связанный контент