ubuntu-server(8.04)で非常に奇妙なエラーが発生しました。dhclientがネットワーク設定を許可されていない理由がわかりません!私はそもそもサーバーをインストールした人ではないので、セットアップについてはあまり知りません。サーバーはファイアウォール/ゲートウェイ(カスタムiptablesスクリプト)としてのみ使用され、インターネット用、LAN用、DMZ用の3つのNICがあります。現在、ISPは静的IPからdhcpを介して割り当てられた「静的」IPに設定を変更しており、実際には使用できません。
悲しいことに、DHCPリースが終了するとISPが接続を閉じるため、IPを静的に設定することはできません。
これは私が得るエラーです:(そして、それはそこでハングします。)
root@fw:~# dhclient eth2
Internet Systems Consortium DHCP Client V3.0.6
Copyright 2004-2007 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFFLAGS: Permission denied
Listening on LPF/eth2/00:50:52:c1:a1:32
Sending on LPF/eth2/00:50:52:c1:a1:32
Sending on Socket/fallback
DHCPDISCOVER on eth2 to 255.255.255.255 port 67 interval 8
DHCPOFFER of 2.10.56.19 from 93.87.36.42
DHCPREQUEST of 2.10.56.19 on eth2 to 255.255.255.255 port 67
DHCPACK of 2.10.56.19 from 93.87.36.42
SIOCSIFADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCSIFNETMASK: Permission denied
SIOCSIFBRDADDR: Permission denied
SIOCSIFFLAGS: Permission denied
SIOCADDRT: Operation not permitted
今のところ、killall dhclient; dhclient eth2
1時間ごとに実行し、インターフェイスの静的IP設定を行うことで修正しました。これで、接続を維持できます。しかし、それは私の見解ではかなり醜いハックです。
-1
オプションを追加して、それ自体が終了するのを待ちます。
-f
オプションがオン:silenzio.dk/pi/dhc.strace
strace -o /tmp/dhc$$ dhclient -d eth2
どのコールが失敗しているかについての貴重な情報をもたらすはずです。はい、私はそれらすべてを知っていますが、議論を見ることは役立つかもしれません。私はeth2ドライバーに何らかの変則があると思います。おそらく、モジュールがカーネルと同期していません。