Bug 6861

Summary: Configure etcnet to pass option -h/-H to dhcpcd
Product: Sisyphus Reporter: Sviatoslav Sviridov <svd>
Component: etcnetAssignee: Mikhail Efremov <sem>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: enhancement    
Priority: P2 CC: inger, ldv, rider, sem, shaba, vseleznv
Version: unstable   
Hardware: all   
OS: Linux   

Description Sviatoslav Sviridov 2005-05-16 17:21:18 MSD
В общем, пока не знаю, где должна быть основная функциональность - в etcnet или
в конфигураторе, но надо бы подумать над тем, чтобы иметь вот такую вот
функицональность:

при конфигурировании интерфейса как dhcp использовать ключ -h <hostname> либо -H
для dhcpcd.

В netscripts такое возможно, если в /etc/sysconfig/network прописан
DHCP_HOSTNAME. Кто его прописывает - я не в курсе, но поскольку это делал не я,
то есть подозрение на инсталлер :)
Поскольку это дефолтное поведение инсталлера, то можно предположить, что это не
приводит к проблемам в большинстве случаев и может использоваться по умолчанию и
в etcnet (нужно мнение специалистов в этой области?).

Итого, надо:
1. иметь в etcnet возможность сконфигурить dhcp-интерфейс со следующими
параметрами на выбор:
a) не использовать параметры -H/-h
b) устанавливать hostname, указанный сервером (option -H)
c) передавать на сервер текущий hostname (будет ли здесь работать DHCP_ARGS="-h
`hostname`"?)
d) передавать на сервер конкретный hostname (DHCP_ARGS="-h myhostname")

В принципе, сейчас все эти варанты поддерживаются в etcnet путем задания
DHCP_ARGS (по идее, вариант 'c' тоже будет работать, хотя конфигурация в таком
виде не совсем красива и чревата ошибками, если
`hostname`==localhost.localdomain). Необходимо только чтобы конфигуратор умел
конфигурировать описанные 4 варианта. И если в конфигураторе окажется сложно
разбирать DHCP_ARGS, то может быть стоит добавить что-нить в options.

В качестве основного, мне кажется, должен быть вариант 'c', но как раз он и
требует дополнительной обработки. Т.е. если [ `hostname` =
"localhost.localdomain" -o `hostanme` == "(none)"], то не стоит использовать -h.
Вариант 'c' передпочтительнее 'd' тем, что не надо прописывать в конфиг
конкретный hostname и потом помнить об этом, если вдруг понадобится сменить имя
хоста.
Comment 1 Denis Ovsienko 2005-05-16 17:31:28 MSD
Так в /etc/net DHCP_ARGS же есть. Наверное, нужно перевешивать на конфигуратор.
Comment 2 Sviatoslav Sviridov 2005-05-16 17:46:57 MSD
(In reply to comment #1)
> Так в /etc/net DHCP_ARGS же есть. Наверное, нужно перевешивать на конфигуратор.

Да, но если делать поддержку варианта 'c', то нужно будет также и в etcnet это
сделать... я проверил - DHCP_ARGS="-h `hostname`" работает, то писать таким
образом некошерно, надо все же отдельно вызывать hostname и добавлять опцию -h в
случае удовлетворительного результата.

Как вариант, могу предложить использовать в options SET_DHCP_HOSTNAME со
значениями <не установлено>/server/auto
Comment 3 Denis Ovsienko 2005-05-18 19:46:32 MSD
Резонно, но совсем не изящно.
Comment 4 Denis Ovsienko 2005-06-21 14:25:48 MSD
Хорошо.
Comment 5 Denis Ovsienko 2005-06-24 12:34:57 MSD
Пошло в /etc/net 0.7.6