Предотвратите использование Zypper IPv6

Я устанавливаю коробку с OpenSUSE 13.1. По причинам, не зависящим от моего понимания, Zypper полностью настаивает на использовании адресов IPv6 и отказывается использовать IPv4. Это проблема, поскольку IPv6 не работает в нашей локальной сети.

Я попытался отключить IPv6 несколькими способами:

  • Я сказал YaST отключить IPv6.
  • Я пробовал тыкать и подталкивать /etc/modprobe .
  • Я попытался установить ipv6.disable=1 в качестве параметра загрузки ядра.

Ничто из этого не имело ни малейшего эффекта; Zypper по- прежнему отказывается использовать реальные IP-адреса и безнадежно пытается использовать IPv6.

Обратите внимание, что я могу ping сервер загрузки просто отлично; команда ping просматривает IPv4-адрес сервера и не вызывает никаких проблем с его проверкой. И все же Zypper по-прежнему настаивает на использовании IPv6, а затем отказывается, потому что назначение недоступно. (Что это – через IPv6.)

У меня есть точная проблема, описанная в этом вопросе . (Даже сбой IPv6-адреса идентичен.) Этот вопрос касается более старой версии OpenSUSE, и принятый ответ просто говорит об отключении IPv6, который я уже пробовал.

Я потратил много времени на свою жизнь, пытаясь выполнить тривиальную задачу по установке нескольких пакетов программного обеспечения. Кто- нибудь знает, как я могу полностью уничтожить IPv6 и снова начать работать в сети?

3 Solutions collect form web for “Предотвратите использование Zypper IPv6”

Похоже, вы сделали правильные вещи, чтобы заблокировать IPv6 с точки зрения ядра, но я также могу предположить, что вы не заботитесь о IPv6 – удалите любые записи IPv6 в / etc / hosts. Если это все еще не делает трюк (и это идет назад), у меня была проблема с резервной копией Amanda, которая была очень похожа на вашу проблему, и была в состоянии исправить ее, установив xinetd вместо inetutils-inetd (примечание что я понятия не имею, что SuSE устанавливает по умолчанию). Наконец (и в качестве меры отчаяния) я мог бы предложить использовать «strace» с чем-то вроде: strace -s 1024 -f -o /tmp/zypper.log / path / to / zypperexecutable, а затем пройти через файл журнала, который ищет этот IPv6 адрес и видя, есть ли что-нибудь информативное, которое может быть полезно. (FYI, «strace» может генерировать HUGE-файл, поэтому вы, вероятно, захотите прервать zypper, как только он сработает).

Следуя предложению пользователя995746, я попытался запустить strace . Вот что он должен сказать:

 ... 1179 socket(PF_INET6, SOCK_DGRAM, IPPROTO_IP) = 5 1179 connect(5, {sa_family=AF_INET6, sin6_port=htons(80), inet_pton(AF_INET6, "2001:67c:2178:8::13", &sin6_addr), sin6_flowinfo=0, sin6_scope_id=0}, 28) = -1 ENETUNREACH (Network is unreachable) 1179 close(5) = 0 1179 madvise(0x7ff48750c000, 8368128, MADV_DONTNEED) = 0 1179 _exit(0) = ? 1179 +++ exited with 0 +++ 1177 <... poll resumed> ) = 0 (Timeout) 1177 socket(PF_INET, SOCK_STREAM|SOCK_CLOEXEC, IPPROTO_TCP) = 5 1177 fcntl(5, F_GETFL) = 0x2 (flags O_RDWR) 1177 fcntl(5, F_SETFL, O_RDWR|O_NONBLOCK) = 0 1177 connect(5, {sa_family=AF_INET, sin_port=htons(80), sin_addr=inet_addr("195.135.221.134")}, 16) = -1 EINPROGRESS (Operation now in progress) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT|POLLWRNORM}], 1, 0) = 0 (Timeout) 1177 poll([{fd=5, events=POLLOUT}], 1, 1000) = ? ERESTART_RESTARTBLOCK (Interrupted by signal) 1177 --- SIGINT {si_signo=SIGINT, si_code=SI_KERNEL} --- ... 

Похоже, что хотя сообщение об ошибке из Zypper совершенно ясно говорит: «Не удалось подключиться к 2001: 67c: 2178: 8 :: 13: Сеть недоступна», программа фактически видит, что IPv6 недоступен и отступает к IPv4. Остается вопрос, почему он не может подключиться через IPv4 – это, вероятно, какая-то проблема с брандмауэром с нашей локальной сетью.

Таким образом, похоже, что IPv6 не является проблемой вообще, просто сообщение об ошибке от Zypper очень вводит в заблуждение.

Решая download.opensuse.org (или любой другой сервер d / l, который вы хотите использовать), а затем загружая свой IPv4-адрес в файл .repo, сделал это для меня. Я использовал sed (1), чтобы искать + заменять все там; работал как шарм.

Не идеально, конечно; и неспособность вернуться к рабочему (!) v4 соединению … меньше звездного. Не обращайте внимания на то, что любое другое приложение, совместимое с двумя файлами, отлично (и способно) получить доступ, скажем, к download.opensuse.org когда есть локальная сеть v6, которая не разрывается (потому что г-н ISP не играет, пример).

До этого времени просто используйте (числовые) IPv4-адреса.

Примечание: zypper использует libcurl, но не выполняет $HOME/.curlrc . Возможно, это будет означать глобальные конфигурационные файлы или переменные среды. curl сам хочет -4 / --ipv4 заставить ipv4.

Кроме того, если бы кто-то перекомпилировал libcurl сам без поддержки ipv6, а затем имел zypper-точку через ld.so.conf или что-то еще, я бы предположил, что все должно работать так же, как ожидалось.

  • Проблема: ничего не предоставляет libcrypto.so.10 () (64 бит), необходимый Percona-Server-client-57-5.7.10-3.1.el7.x86_64
  • Отметить RPM как автоматически или вручную
  • Как использовать zypper в сценариях bash для кого-то из apt-get?
  • Как изменить путь установки по умолчанию, используя zypper в suse 11.2?
  • Неполадка библиотеки OpenSUSE 12.3 - полностью оборвана, обновление прошло плохо
  • Где источник zypper source-install помещает источники?
  • Как переустановить все установленные пакеты с помощью zypper
  • Как установить шаблоны и пакеты одновременно?
  • Как загрузить rpm в локальный репозиторий?
  • Как использовать zypper, как я могу удалить все пакеты, установленные из определенного репозитория?
  • Как загрузить пакет в мой приватный репозиторий YUM на Suse
  • Interesting Posts

    Можете ли вы представить пример использования для `zrun`?

    Ubuntu 12.04 liveusb / cd – Горит в режиме чтения записи?

    Начать процесс на другом tty

    Произведите вывод команды команды rm

    Как настроить OpenVPN в качестве клиента шлюза для Witopia?

    Предотвратите кражу фокуса в Awesome WM, особенно из Skype

    Как создать новый раздел в Ubuntu

    В интерактивной оболочке, почему кто-либо устанавливает IFS на что-то другое, кроме значения по умолчанию?

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

    0 байт, созданный в простом скрипте

    Можно ли выбрать вкладки в качестве вкладок с мышью в urxvt?

    Как я могу переместить строку состояния tmux в начало?

    Являются ли бинарные файлы переносимыми в разных архитектурах процессора?

    Производительность Seq при указании строки формата

    git tab-completion не работает на Debian Wheezy, но работает на Squeeze

    Linux и Unix - лучшая ОС в мире.