ここに奇妙な問題があります。
デュアルNICメインボードを備えたデバイスが多数あります。いくつかはRealtekNICであり、それは最悪です。一部はIntele1000ですが、そうではありません。
2台のマシンで気づきました。1台はIntelNIC、もう1台はRealtekで、1台のマシンのMACアドレスをDHCPサーバーのdhcpd.conf
ファイルに入れて、マシンをPXEブートするようにしました。再構築環境では、最初はすべて問題ありません。
サーバーはDHCP割り当てを取得し、PXEはUbuntupreseed環境で起動します。
1台または2台のマシンでは、UbuntuのDHCPネットワーク構成まで到達し、失敗します。ビジーボックスシェル(インストールマシンのtty2
上)をプルアップしてip link
を実行すると、other NICでUPフラグが設定されていることがわかります。
ここにいくつかのものがあります。
Host xeon16-ghz240-gb48-node1 {
hardware ethernet BC:AE:C5:07:1F:18;
filename "pxelinux.0";
next-server 192.168.123.80;
}
それがdhcpd.conf
にあるものです
これは、邪悪なマシンのIPリンクがどのように見えるかです。
実際に接続されているNIC)は1つだけです(意図的に)。
ご覧のとおり、dhcpd構成にあるNICは、UPとしてマークされておらず、UPになっているリンクはDHCPのリンクではありません。
これまで、2つのブランドのデュアルNIC構成でこれを見てきました。
誰かが1)それを引き起こしているものとb)それについて私たちができることを知っていますか?
何かをする方法は常に複数あります:)
それぞれが1つずつあるマザーボード?
どちらのモジュールもブラックリストに登録します(ethtool -i eth0
)はRealtekカードをサポートしています。
Ubuntu サポートmodule_name.blacklist=yes
起動時にブラックリストに登録すると、preseed環境でmodprobeオプションを変更して、後でプローブされないようにすることができます。
問題を言い換えさせてください:
2つのNICを備えたマザーボードがあり、どのインターフェイスが接続されていても一貫して動作するようにします。(OSの観点から)どのインターフェイスが接続されるかを常に判断できるとは限りません。
ボンディングを設定してください!アクティブ-パッシブ構成を使用します(mode=active-backup miimon=100
)両方のインターフェースをスレーブとして使用します。このように、どのインターフェースが接続されていても、常に機能します。
NICが常に同じPCIIDに表示されるように、マザーボードは十分に一貫していますか? udevルールを使用して、特定のPCIアドレスのカードを常にeth0に割り当て、他のアドレスのカードをeth1に割り当てます。
デバイスをeth0に割り当てる2つの異なるudevルールを持つことができることに注意してください-これにより、Realtekとe1000のケースを同時に処理できます。
PXELINUXIPAPPEND 2オプションをpxelinux.cfgファイルに追加して、PXEブートを実行したインターフェイスを使用するようにinitスクリプトに指示することができます。
/var/lib/tftpboot/pxelinux.cfg/default
LABEL linux
KERNEL /ubuntu/casper/vmlinuz
APPEND initrd=/ubuntu/casper/initrd.gz root=/dev/nfs boot=casper netboot=nfs nfsroot=192.168.1.1:/var/lib/tftpboot/ubuntu --
IPAPPEND 2
参照: http://www.syslinux.org/wiki/index.php/SYSLINUX#IPAPPEND_flag_val_.5BPXELINUX_only.5D