FreeBSD/VMware: lnc0: Missed packet — no receive buffer

És egyszer csak nem elérhető a FreeBSD-s virtuális géped – mi történt, halló?

Régóta használok FreeBSD-s gépeket, megmondom őszintén, a mai napig jobban szeretem a kis ördögöt mint a csapból is folyó pingwint (w: ha-ha). Muszáj voltam Linux-szal is foglalkozni, mert a vitualizáció jobban támogatott ott (Xen, VMware, stb.) illetve pl. egy OracleXE beizzítása is valamelyest egyszerűbb (kb. 2 parancs) pl. Debian alatt.

Történt hát, hogy az egyik FreeBSD-s virtuális teszt gépem egyszer csak eltűnt a hálózatról. Kétségtelen, hogy szinte produkciós üzem ment rajta, a meg növekedett terhelés igencsak nyúzta a virtuális hálózati kártyát benne.

Az alapértelmezett AMD Lance/PCnet (lnc0)-ot nem szeretjük, Intel(R) PRO/1000 Gigabit (em0) a barátunk

Megjegyzem, ha létrehozol egy FreeBSD virtuális gépet, akkor alapértelmezetten az lnc (AMD Lance/PCnet Ethernet device driver) segítségével működik.

Sokáig nem tudtam, mit kell tenni, míg végre megtaláltam a frankót a Google apró betűs részében. Megmondom őszintén, nem triviális a megoldás, aki csak FreeBSD-t virtualizál, bele fog futni ebbe a hibába. Az ESX szerver sem kivétel :)

A hiba így néz ki, íme egy részlet a naplómból, mielőtt elvesztettem a gépet. Hiába mondják, hogy aTCP ablak mókolással /értsd konfigurálással :) / meg lehet javítani, ez baromság.

May 13 10:17:41 mail kernel: lnc0: Missed packet — no receive buffer

May 13 10:18:05 mail last message repeated 2 times

May 13 10:19:41 mail last message repeated 12 times

May 13 10:20:22 mail last message repeated 2 times

Megoldás a virtuális hardver átállítása a VMX konfigurációs fájlban: Ethernet0.virtualDev = "e1000"

Tudtad, hogy amikor létrehozol egy virtuális gépet, a VMX konfigurációs fájlban kerül rögzítésre, hogy milyen paraméterei lesznek a virtuális gépednek?

Azt is tudtad, hogy nem lehet mindent a kattintgatós VMware varázslóval ott beállítani? Pl. nagy a sunyítás a hálózati kártya típusáról. Pedig lehet kérni másik virtuális hardvert is, csak picit hegeszteni kell a VMX konfigurációs fájlon.

A megoldást itt találtam: „FreeBSD Gigabit Ethernet under VMware”

http://www.buzmo.com/2007/02/freebsd-gigabit-ethernet-under-vmware.html

Javítási forgatókönyv

Amit célszerű tehát ellenőrizni: a kernel-ben benne van-e az „em” driver (átalában igen), ha nem vagy belefordítod, vagy betöltöd modulként.

device em # Intel PRO/1000 adapter Gigabit Ethernet Card

A fenti címen javasolja, hogy először állítsd át a FreeBSD gépedet, hogy amikor legközelebb indul „lnc” helyett „em” driverrel, akkor is kapjon IP címet, illetve működjön minden, ami korábban az lnc-vel kapcsolatban be volt állítva. Tehát az alábbi módosítások javasoltak:

· Change the ifconfig_lncX lines in /etc/rc.conf to ifconfig_emX

· Change any static references in /etc/pf.conf from lncX to emX

· Generally doesn’t hurt to do a quick ‘grep lnc /etc/*’ to see if there is anything else referencing the interface you’re about to remove – ez tényleg nem fáj :-)

· Shutdown the guest OS

Majd állítsd le a virtuális géped.

Írd bele az VMX konfigurációs fájlba minden hálózati adapterhez (jellemzően 1 van) az alábbit (értelemszerűen):

· Make a backup of and then open the guest’s vmx file in your favorite editor

· For each interface you want to change, add Ethernet0.virtualDev = "e1000"

· Save the changes and bring the guest back up

Elégedetten hátradől

Ha szerencséd van (ez ügyben nekem minden alkalommal bejött a módosítás) többet nem találkozol a csúnya lnc0: Missed packet — no receive buffer hibaüzenettel.

Kellemes FreeBSD virtualizálást kívánok!

Folytatás hamarosan…

Legközelebbi cikkemben a Varázslatos VMX fájllal ismerkedünk meg. Gondolom, e cikk kapcsán Te is elgondolkodtál, mi mindent lehet még a virtuális csavarhúzóval szerelni a VMX fájlban.

Annak idején kártyákat dugdostunk meg modulokat (memória, merevlemez , stb.) cserélgettünk fizikai a gépben. A virtualizáció megváltoztatja a hardver konfigurációs szokásaidat is: mostantól egy (VMX) fájlt szerkesztgetsz és a hatás a virtualizált operációs rendszerből nézve ugyanaz. Mókás nem?

VN:F [1.8.2_1042]
Rating: 6.0/10 (1 vote cast)
FreeBSD/VMware: lnc0: Missed packet -- no receive buffer6.0101

Comments are closed.

Cimkék
Levelezési lista
Google Groups
Csatlakozz a levelezési listánkhoz!
Email:
Irány a levlista oldalára
Támogatóink
EMC
ERP
Keresés