The following warnings occurred:
Warning [2] count(): Parameter must be an array or an object that implements Countable - Line: 807 - File: showthread.php PHP 7.3.15 (Linux)
File Line Function
/showthread.php 807 errorHandler->error





Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
use-cached not working?
2017-03-04, 04:53 (This post was last modified: 2017-03-04 05:23 by korekhov.)
Post: #1
use-cached not working?
Hello all!

We have been using iPXE's ability to use cached IP from PXE for several years, but in latest versions of iPXE that I had to recompile for support of newer NICs, I don't seem to be able to use that anymore - iPXE always goes back to DHCP server to request an IP. Because of different UUIDs, this results in 2 IPs given to the same MAC, which is wasteful:

iPXE> echo ${use-cached}
1
iPXE> dhcp net0
Configuring (net0 38:ea:a7:31:3f:68).................. ok
iPXE>

lease 10.28.7.245 {
starts 6 2017/03/04 02:36:27;
ends 6 2017/03/04 02:37:33;
tstp 6 2017/03/04 02:37:33;
cltt 6 2017/03/04 02:36:27;
binding state free;
hardware ethernet 38:ea:a7:31:3f:68;
uid "\0018\352\2471?h";
}
lease 10.28.7.160 {
starts 6 2017/03/04 02:37:33;
ends 6 2017/03/04 02:47:33;
cltt 6 2017/03/04 02:37:33;
binding state active;
next binding state free;
hardware ethernet 38:ea:a7:31:3f:68;
}


Here's the way I compiled kkpxe just tonight off the latest git repo:

make bin/undionly.kkpxe EMBED=../embedded-script.pxe,/usr/lib/syslinux/pxelinux.0

Content of embedded-script.pxe:

#!ipxe
set use-cached 1
prompt --key 0x02 --timeout 5000 Press Ctrl-B for command line && shell ||
dhcp
# passed as BOOTIF=${bootif} to kernels, later.
set bootif:string 01-${mac:hexhyp}
# If there is a DHCP option for "directory" set, assume that's a
# new bootmethod URL.
isset ${210:string} && set bootmethod:string ${210:string} && goto chainstart ||
set bootmethod:string tftp://${next-server}/
:chainstart
# bootmethod, ipargs, bootif used by chained scripts
chain ${bootmethod}pxelinux.cfg/${bootif}.ipxe ||
chain pxelinux.0 ||
shell
EOF

Am I missing something here? Can't put my finger on it...
Thanks!
Forgot to mention that I've made the following modifications to enable interesting to us features:

config/console.h
-//#define CONSOLE_SERIAL /* Serial port console */
+#define CONSOLE_SERIAL /* Serial port console */

-//#define CONSOLE_SYSLOG /* Syslog console */
+#define CONSOLE_SYSLOG /* Syslog console */

config/general.h
-#undef NET_PROTO_IPV6 /* IPv6 protocol */
+#define NET_PROTO_IPV6 /* IPv6 protocol */

-#undef DOWNLOAD_PROTO_HTTPS /* Secure Hypertext Transfer Protocol */
+#define DOWNLOAD_PROTO_HTTPS /* Secure Hypertext Transfer Protocol */

-//#define NSLOOKUP_CMD /* DNS resolving command */
-//#define TIME_CMD /* Time commands */
-//#define DIGEST_CMD /* Image crypto digest commands */
-//#define LOTEST_CMD /* Loopback testing commands */
-//#define VLAN_CMD /* VLAN commands */
-//#define PXE_CMD /* PXE commands */
-//#define REBOOT_CMD /* Reboot command */
-//#define POWEROFF_CMD /* Power off command */
-//#define IMAGE_TRUST_CMD /* Image trust management commands */
-//#define PCI_CMD /* PCI commands */
-//#define PARAM_CMD /* Form parameter commands */
-//#define NEIGHBOUR_CMD /* Neighbour management commands */
-//#define PING_CMD /* Ping command */
-//#define CONSOLE_CMD /* Console command */
-//#define IPSTAT_CMD /* IP statistics commands */
-//#define PROFSTAT_CMD /* Profiling commands */
-//#define NTP_CMD /* NTP commands */
-//#define CERT_CMD /* Certificate management commands */
+#define NSLOOKUP_CMD /* DNS resolving command */
+#define TIME_CMD /* Time commands */
+#define DIGEST_CMD /* Image crypto digest commands */
+#define LOTEST_CMD /* Loopback testing commands */
+#define VLAN_CMD /* VLAN commands */
+#define PXE_CMD /* PXE commands */
+#define REBOOT_CMD /* Reboot command */
+#define POWEROFF_CMD /* Power off command */
+#define IMAGE_TRUST_CMD /* Image trust management commands */
+#define PCI_CMD /* PCI commands */
+#define PARAM_CMD /* Form parameter commands */
+#define NEIGHBOUR_CMD /* Neighbour management commands */
+#define PING_CMD /* Ping command */
+#define CONSOLE_CMD /* Console command */
+#define IPSTAT_CMD /* IP statistics commands */
+#define PROFSTAT_CMD /* Profiling commands */
+#define NTP_CMD /* NTP commands */
+#define CERT_CMD /* Certificate management commands */
Just recompiled kkpxe w/o any changes to any of the header files and got the same result Sad
Find all posts by this user
Quote this message in a reply
Post Reply 


Messages In This Thread
use-cached not working? - korekhov - 2017-03-04 04:53
RE: use-cached not working? - NiKiZe - 2017-03-04, 16:57
RE: use-cached not working? - NiKiZe - 2017-06-19, 11:44



User(s) browsing this thread: 1 Guest(s)