Forum Replies Created
-
AuthorPosts
-
renato.morano
MemberHi,
I don’t have a alix board, but just after SETUP->Profiles->New partition, I image some pre-boot scrips like
mount /dev/sdxxxx /Database/tftpboot.β Please backup your profile first !!! β
renato.morano
Memberrenato.morano
MemberI already have more than one ip range so that’s not it.
I tried with the old and new ndionly and it work.Looks like I didn’t have the “next-server” line Smile
EDIT: Damn, I had it. I really don’t know why it works now. I’ll try again with the old ndionly.
Hi,
so we are in the fog ?!?
renato.morano
MemberHi,
please let us know what has been the solution ?
1) undionly.kpxe binary
2) just one range of ip in dhcpd configuration
3) or just we have been lucky π
Renato
renato.morano
MemberHi,
my dhcpd.conf is:
root@labtest tftpboot> cat /tmp/dhcpd.conf
authoritative;
ddns-update-style interim;
ignore client-updates;
option space ipxe;
option ipxe-encap-opts code 175 = encapsulate ipxe;
option ipxe.priority code 1 = signed integer 8;
option ipxe.keep-san code 8 = unsigned integer 8;
option ipxe.skip-san-boot code 9 = unsigned integer 8;
option ipxe.syslogs code 85 = string;
option ipxe.cert code 91 = string;
option ipxe.privkey code 92 = string;
option ipxe.crosscert code 93 = string;
option ipxe.no-pxedhcp code 176 = unsigned integer 8;
option ipxe.bus-id code 177 = string;
option ipxe.bios-drive code 189 = unsigned integer 8;
option ipxe.username code 190 = string;
option ipxe.password code 191 = string;
option ipxe.reverse-username code 192 = string;
option ipxe.reverse-password code 193 = string;
option ipxe.version code 235 = string;
option iscsi-initiator-iqn code 203 = string;
# Feature indicators
option ipxe.pxeext code 16 = unsigned integer 8;
option ipxe.iscsi code 17 = unsigned integer 8;
option ipxe.aoe code 18 = unsigned integer 8;
option ipxe.http code 19 = unsigned integer 8;
option ipxe.https code 20 = unsigned integer 8;
option ipxe.tftp code 21 = unsigned integer 8;
option ipxe.ftp code 22 = unsigned integer 8;
option ipxe.dns code 23 = unsigned integer 8;
option ipxe.bzimage code 24 = unsigned integer 8;
option ipxe.multiboot code 25 = unsigned integer 8;
option ipxe.slam code 26 = unsigned integer 8;
option ipxe.srp code 27 = unsigned integer 8;
option ipxe.nbi code 32 = unsigned integer 8;
option ipxe.pxe code 33 = unsigned integer 8;
option ipxe.elf code 34 = unsigned integer 8;
option ipxe.comboot code 35 = unsigned integer 8;
option ipxe.efi code 36 = unsigned integer 8;
option ipxe.fcoe code 37 = unsigned integer 8;
#host SmartOS {
# hardware ethernet 00:e0:81:5d:c2:5e;
# fixed-address 192.168.4.40;
# next-server 192.168.4.75;
# if exists user-class and option user-class = "iPXE" {
# filename = "smartos.ipxe";
# } else {
# filename = "undionly.kpxe";
# }
#}
subnet 192.168.4.0 netmask 255.255.255.0 {
option routers 192.168.4.75;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.4.75, 8.8.8.8, 8.8.4.4;
next-server 192.168.4.75;
if exists user-class and option user-class = "iPXE" {
filename = "smartos.ipxe";
} else {
filename = "undionly.kpxe";
}
default-lease-time 28800;
max-lease-time 28800;
range 192.168.4.20 192.168.4.30;
host 3232236554_00237DFDB8F1 {
hardware ethernet 00:23:7D:FD:B8:F1;
fixed-address 192.168.4.10;
}
host 3232236566_00237DFDB936 {
hardware ethernet 00:23:7D:FD:B9:36;
fixed-address 192.168.4.22;
}
host 3232236594_08002766168D {
hardware ethernet 08:00:27:66:16:8D;
fixed-address 192.168.4.50;
}
}but I have just one IP range and if I add a new range all is still working.
So can be related to undionly.kpxe binary ?
I use undionly.kpxe dowloaded from http://boot.ipxe.org/undionly.kpxe [iPXE 1.0.0+ (5520)] but is working also undionly.kpxe from http://cuddletech.com/IPXE-100612_undionly.kpxe [iPXE 1.0.0+ (a712)] as suggested by Ben Rockwood [ http://wiki.smartos.org/display/DOC/PXE+Booting+SmartOS ]
As last resouces you can test if something change if you add “Speeding up DHCP”
[http://ipxe.org/howto/dhcpd ]
The PXE specification requires iPXE to wait for replies from a ProxyDHCP server before booting. If you are not using a ProxyDHCP server, then this creates an unnecessary delay of several seconds. You can eliminate this delay using:option ipxe.no-pxedhcp 1;
(Do not do this if you are using a ProxyDHCP server; it will cause iPXE to ignore whatever the ProxyDHCP server sends!)
Let me know …
see you π
renato.morano
MemberHi,
so after you applied the patch, you have added all these parameters in
your /Database/var/register/system/dhcp/Global_Parameters fileoption space ipxe;
option ipxe-encap-opts code 175 = encapsulate ipxe;
option ipxe.priority code 1 = signed integer 8;
option ipxe.keep-san code 8 = unsigned integer 8;
option ipxe.skip-san-boot code 9 = unsigned integer 8;
option ipxe.syslogs code 85 = string;
option ipxe.cert code 91 = string;
option ipxe.privkey code 92 = string;
option ipxe.crosscert code 93 = string;
option ipxe.no-pxedhcp code 176 = unsigned integer 8;
option ipxe.bus-id code 177 = string;
option ipxe.bios-drive code 189 = unsigned integer 8;
option ipxe.username code 190 = string;
option ipxe.password code 191 = string;
option ipxe.reverse-username code 192 = string;
option ipxe.reverse-password code 193 = string;
option ipxe.version code 235 = string;
option iscsi-initiator-iqn code 203 = string;
# Feature indicators
option ipxe.pxeext code 16 = unsigned integer 8;
option ipxe.iscsi code 17 = unsigned integer 8;
option ipxe.aoe code 18 = unsigned integer 8;
option ipxe.http code 19 = unsigned integer 8;
option ipxe.https code 20 = unsigned integer 8;
option ipxe.tftp code 21 = unsigned integer 8;
option ipxe.ftp code 22 = unsigned integer 8;
option ipxe.dns code 23 = unsigned integer 8;
option ipxe.bzimage code 24 = unsigned integer 8;
option ipxe.multiboot code 25 = unsigned integer 8;
option ipxe.slam code 26 = unsigned integer 8;
option ipxe.srp code 27 = unsigned integer 8;
option ipxe.nbi code 32 = unsigned integer 8;
option ipxe.pxe code 33 = unsigned integer 8;
option ipxe.elf code 34 = unsigned integer 8;
option ipxe.comboot code 35 = unsigned integer 8;
option ipxe.efi code 36 = unsigned integer 8;
option ipxe.fcoe code 37 = unsigned integer 8;in this case plase try to add in your DHCP advanced option also next-server IP_ZEROSHELL;
I have:next-server 192.168.4.75;
if exists user-class and option user-class = "iPXE" {
filename = "smartos.ipxe";
} else {
filename = "undionly.kpxe";
}where 192.168.4.75 is IP of the zersoshell box
My menu.ipxe is smartos.ipxe
root@labtest tftpboot> cat smartos.ipxe
#!ipxe
# /tftpboot/smartos.ipxe.tpl
set smartos-build 20130808T195337Z
set smartos-latest 20130822T211238Z
######## MAIN MENU ###################
:start
menu Welcome to iPXE's Boot Menu
item
item --gap --
Operating systems
item smartos Boot SmartOS (${smartos-build})
item smartos-latest Boot SmartOS (${smartos-latest})
item --gap --
Utilities
item shell Enter iPXE shell
item reboot Reboot
item
item exit Exit (boot local disk)
choose --default smartos-latest --timeout 30000 target && goto ${target}
########## UTILITY ITEMS ####################
:shell
echo Type exit to get the back to the menu
shell
set menu-timeout 0
goto start
:reboot
reboot
:exit
exit
########## MENU ITEMS #######################
# SmartOS
:smartos
kernel /smartos/${smartos-build}/platform/i86pc/kernel/amd64/unix -B smartos=true
initrd /smartos/${smartos-build}/platform/i86pc/amd64/boot_archive
boot
goto start
# SmartOS Latest
:smartos-latest
kernel /smartos/${smartos-latest}/platform/i86pc/kernel/amd64/unix -B smartos=true
initrd /smartos/${smartos-latest}/platform/i86pc/amd64/boot_archive
boot
goto startI hope this can be useful to you
and
. π
just a question but your dhcpd range of ip address is more than one ?
renato.morano
MemberHi,
1) have you patch the dhcp as suggested by z.c ( https://www.zeroshell.org/forum/viewtopic.php?t=2989&highlight=dhcp+howto) ?
I did the same and works π http://www.renatomorano.net/?p=1944
I’ll try to translate my post in English so can be more useful, too
ps.
after patch dhcpd, my advanced options are:
next-server IP_ZEROSHELL_ON_THE_SUBNET;
if exists user-class and option user-class = “iPXE” {
filename = “smartos.ipxe”;
} else {
filename = “undionly.kpxe”;
}renato.morano
MemberHi,
so you can’t use the net balance and bond ( active-backup) neither too ?
mode=1 (active-backup)
Active-backup policy: Only one slave in the bond is active. A different slave becomes active if, and only if, the active slave fails. The bond’s MAC address is externally visible on only one port (network adapter) to avoid confusing the switch. This mode provides fault tolerance. The primary option affects the behavior of this mode.renato.morano
MemberHi,
you have to change the file /root/kerbynet.cgi/scripts/mkbonddev
Please let we know your “experiment” are working and why you need to do this .
Another question: but when you speak about “other hardware” what hardware is ?
ciao
renato.morano
MemberHi,
are you talking about the bonding ?
renato.morano
MemberHI,
ma il tuo italiano Γ© perfetto π
renato.morano
MemberCiao,
mode=0 (balance-rr)
Round-robin policy: Transmit packets in sequential order from the first available slave through the last. This mode provides load balancing and fault tolerance.mode=1 (active-backup)
Active-backup policy: Only one slave in the bond is active. A different slave becomes active if, and only if, the active slave fails. The bond’s MAC address is externally visible on only one port (network adapter) to avoid confusing the switch. This mode provides fault tolerance. The primary option affects the behavior of this mode.mode=2 (balance-xor)
XOR policy: Transmit based on [(source MAC address XOR’d with destination MAC address) modulo slave count]. This selects the same slave for each destination MAC address. This mode provides load balancing and fault tolerance.mode=3 (broadcast)
Broadcast policy: transmits everything on all slave interfaces. This mode provides fault tolerance.mode=4 (802.3ad)
IEEE 802.3ad Dynamic link aggregation. Creates aggregation groups that share the same speed and duplex settings. Utilizes all slaves in the active aggregator according to the 802.3ad specification.Pre-requisites:
1. Ethtool support in the base drivers for retrieving
the speed and duplex of each slave.
2. A switch that supports IEEE 802.3ad Dynamic link
aggregation.
Most switches will require some type of configuration
to enable 802.3ad mode.mode=5 (balance-tlb)
Adaptive transmit load balancing: channel bonding that does not require any special switch support. The outgoing traffic is distributed according to the current load (computed relative to the speed) on each slave. Incoming traffic is received by the current slave. If the receiving slave fails, another slave takes over the MAC address of the failed receiving slave.Prerequisite:
Ethtool support in the base drivers for retrieving the
speed of each slave.mode=6 (balance-alb)
Adaptive load balancing: includes balance-tlb plus receive load balancing (rlb) for IPV4 traffic, and does not require any special switch support. The receive load balancing is achieved by ARP negotiation. The bonding driver intercepts the ARP Replies sent by the local system on their way out and overwrites the source hardware address with the unique hardware address of one of the slaves in the bond such that different peers use different hardware addresses for the server.The most used are the first four mode types…
Now we have mode=0 (balance-rr) and mode=1 (active-backup).
but if we need mode 5,6 we can change the file
/root/kerbynet.cgi/template/bondconfigand add the rows:
<input type=radio name=Type value=5
onclick=”typechanged()”> Adaptive transmit load
balancing<input type=radio name=Type value=6
onclick=”typechanged()”> Adaptive load balancingto have an persistent configuration
in active profile mkdir dir bond
and cp /root/kerbynet.cgi/template/bondconfig /Database/bond/
then in tab Pre Boot script
we addcat /Database/bond/bondconfig >/root/kerbynet.cgi/template/bondconfig
.
at the endrenato.morano
MemberDear Nick,
can you send again the patch.
I can’t wait.
π
@nickphx wrote:
@nickphx wrote:
@renato.morano wrote:
Hi,
please send me the patch π
I hope there are some changes to do to define new model of round robin into zeroshell GUI.
http://anubis.mw.hu/bonding/bonding.h.diff
http://anubis.mw.hu/bonding/bond_main.c.diff
http://anubis.mw.hu/bonding/if_bonding.h.diff
http://anubis.mw.hu/bonding/readme.txtthis is for an older kernel version so the patch would have to be manually applied.. if you could tell me where to get your config.gz for the kernel in r16 i will try to apply the patch to 3.2.2 kernel source.
I emailed the author of the original patch. He provided a more recent patch for kernel version 2.6.32-5-amd64.
renato.morano
MemberHello,
I’m here, I can help you but only in remote way π
Ciao
Renato
renato dot .morano at gmail DOT comrenato.morano
MemberI’m proud to annunce
http://brillig.org/~rmorano/zs_337.img.bz2
as always
http://www.renatomorano.net/?p=1279thaks a lot.
please let me know if the image is working π
-
AuthorPosts