Автор Тема: OVZ не присваивается адрес контейнеру [Решено]  (Прочитано 1071 раз)

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Разбираюсь с OVZ. Настраиваю сеть. Появился вопрос.
Конфигурация:
Хост: стартеркит p7 на ядре ovz-el
VM: стартеркит p8

На хоте даю команду:
vzctl set vpn --ipadd 172.30.1.1 --save
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default
Deleting IP address(es): 172.30.1.1
/bin/bash: line 452: ifconfig: command not found
Adding IP address(es): 172.30.1.1
/bin/bash: line 627: ifconfig: command not found
Computing interface groups: . 1 interfaces found
Processing /etc/net/vlantab: empty.
Stopping group 0/virtual (1 interfaces)
Stopping lo: .OK
sysctl: setting key "net.ipv4.tcp_timestamps": Permission denied
Computing interface groups: . 1 interfaces found
Starting group 0/virtual (1 interfaces)
Starting lo: ....OK
Processing /etc/net/vlantab: empty.
CT configuration saved to /etc/vz/conf/20101.conf
Т.е. в контейнере отсутствует ifconfig, а хост пытается через него сеть настраивать.

Результат на vm:
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP> mtu 1500 qdisc noop state DOWN
    link/void

Если применять на остановленном контейнере, то вроде, сохраняет:
# vzctl stop vpn
Stopping container ...
Container was stopped
Container is unmounted
# vzctl set vpn --ipadd 172.30.1.1 --save
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default
CT configuration saved to /etc/vz/conf/20101.conf
# vzctl start vpn
Starting container...
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default
Container is mounted
Adding IP address(es): 172.30.1.1
Setting CPU units: 1000
Container start in progress...
И, даже, статус показывает:
# vzlist
      CTID      NPROC STATUS    IP_ADDR         HOSTNAME
     20101          7 running   172.30.1.1      удалено.ru
Но в контейнере без изменений:
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP> mtu 1500 qdisc noop state DOWN
    link/void

Подскажите, пожалуйста, что деть. На ум, пока, приходят 2 варианта:
1. Плохой - прописать сеть руками в конфигах контейнера.
2. Сомнительный - вручную распаковать net-tools
« Последнее редактирование: 20.10.2016 06:01:48 от Dmytro »

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Установил в контейнер net-tools с зависимостями. Вывод команды изменился, а результат - нет.
# vzctl set vpn --ipadd 172.30.1.1 --save
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default
Deleting IP address(es): 172.30.1.1
Adding IP address(es): 172.30.1.1
Computing interface groups: . 1 interfaces found
Processing /etc/net/vlantab: empty.
Stopping group 0/virtual (1 interfaces)
Stopping lo: .OK
sysctl: setting key "net.ipv4.tcp_timestamps": Permission denied
Computing interface groups: . 1 interfaces found
Starting group 0/virtual (1 interfaces)
Starting lo: ....OK
Processing /etc/net/vlantab: empty.
CT configuration saved to /etc/vz/conf/20101.conf
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP> mtu 1500 qdisc noop state DOWN
    link/void

Может быть, я не то делаю? Должен ли быть у venet0 адрес?

Смущает вот эта строка:
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default

Оффлайн Dmytro

  • Мастер
  • ***
  • Сообщений: 1 001
Смущает вот эта строка:
Warning: configuration file for distribution alt-p8-ovz-generic-20160912-i586 not found, using defaults from /etc/vz/dists/default
Причину вот этого нашел. Есть скрипты на "altlinux", но нет скриптов на "alt". Соответственно, нужно либо скрипты переименовывать и конфиги править, либо переименовать контейнер.

На хосте:
#
# cp /etc/vz/dists/altlinux.conf /etc/vz/dists/alt.conf

И теперь повторяем попытку.

На хосте:
# vzctl set vpn --ipadd 172.30.1.1 --save
Deleting IP address(es): 172.30.1.1
sed: can't read venet0/ipv4address: No such file or directory
RTNETLINK answers: Cannot assign requested address
Adding IP address(es): 172.30.1.1
RTNETLINK answers: No such process

На ВМ
# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: venet0: <BROADCAST,POINTOPOINT,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
    link/void
    inet 172.30.1.1/32 scope global venet0:1
Заработало.