diff --git a/.gitignore b/.gitignore
index 5c841e8..f98133b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/kronosnet-1.22.tar.gz
+SOURCES/kronosnet-1.24.tar.gz
diff --git a/.kronosnet.metadata b/.kronosnet.metadata
index 738effa..8931b73 100644
--- a/.kronosnet.metadata
+++ b/.kronosnet.metadata
@@ -1 +1 @@
-00f8110dfa4ec8d07511d48017d75441516c3b4b SOURCES/kronosnet-1.22.tar.gz
+3e653668f59bc6d9eeb876cbe840b1080161c11c SOURCES/kronosnet-1.24.tar.gz
diff --git a/SOURCES/bz2112924-fix-dst_seq_num_init-race.patch b/SOURCES/bz2112924-fix-dst_seq_num_init-race.patch
deleted file mode 100644
index 4aa76ba..0000000
--- a/SOURCES/bz2112924-fix-dst_seq_num_init-race.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-commit 62271c5c0b08041b24930310c04e3933720917c6
-Author: Fabio M. Di Nitto <fdinitto@redhat.com>
-Date:   Mon Nov 8 09:14:22 2021 +0100
-
-    [host] fix dst_seq_num initialization race condition
-    
-    There is a potential race condition where the sender
-    is overloaded, sending data packets before pings
-    can kick in and set the correct dst_seq_num.
-    
-    if this node is starting up (dst_seq_num = 0),
-    it can start rejecing valid packets and get stuck.
-    
-    Set the dst_seq_num to the first seen packet and
-    use that as reference instead.
-    
-    Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
-
-diff --git a/libknet/host.c b/libknet/host.c
-index f02ef02..54061fd 100644
---- a/libknet/host.c
-+++ b/libknet/host.c
-@@ -617,6 +617,21 @@ int _seq_num_lookup(knet_handle_t knet_h, struct knet_host *host, seq_num_t seq_
- 	char *dst_cbuf_defrag = host->circular_buffer_defrag;
- 	seq_num_t *dst_seq_num = &host->rx_seq_num;
- 
-+	/*
-+	 * There is a potential race condition where the sender
-+	 * is overloaded, sending data packets before pings
-+	 * can kick in and set the correct dst_seq_num.
-+	 *
-+	 * if this node is starting up (dst_seq_num = 0),
-+	 * it can start rejecing valid packets and get stuck.
-+	 *
-+	 * Set the dst_seq_num to the first seen packet and
-+	 * use that as reference instead.
-+	 */
-+	if (!*dst_seq_num) {
-+		*dst_seq_num = seq_num;
-+	}
-+
- 	if (clear_buf) {
- 		_clear_cbuffers(host, seq_num);
- 	}
diff --git a/SOURCES/bz2112924-icmp-faster-link-down-detection.patch b/SOURCES/bz2112924-icmp-faster-link-down-detection.patch
deleted file mode 100644
index cf8f99b..0000000
--- a/SOURCES/bz2112924-icmp-faster-link-down-detection.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-commit 28ddb87a2f4562c5d1752a778744cc56136f81c1
-Author: Fabio M. Di Nitto <fdinitto@redhat.com>
-Date:   Sun Nov 7 17:02:05 2021 +0100
-
-    [udp] use ICMP error messages to trigger faster link down detection
-    
-    this solves a possible race condition when:
-    
-    - node1 is running
-    - node2 very fast
-    - node1 does NOT have enough time to detect that node2 has gone
-      and reset the local seq numbers / buffers
-    - node1 will start rejecting valid packets from node2
-    
-    There is still a potential minor race condition where app
-    can restart so fast that kernel / network don't have time
-    to generate an ICMP error. This will be addressed using
-    instance id in onwire v2 protocol, as suggested by Jan F.
-    
-    Signed-off-by: Fabio M. Di Nitto <fdinitto@redhat.com>
-
-diff --git a/libknet/transport_udp.c b/libknet/transport_udp.c
-index 963340d..32dd032 100644
---- a/libknet/transport_udp.c
-+++ b/libknet/transport_udp.c
-@@ -364,6 +364,46 @@ static int read_errs_from_sock(knet_handle_t knet_h, int sockfd)
- 									log_debug(knet_h, KNET_SUB_TRANSP_UDP, "Received ICMP error from %s: %s destination unknown", addr_str, strerror(sock_err->ee_errno));
- 								} else {
- 									log_debug(knet_h, KNET_SUB_TRANSP_UDP, "Received ICMP error from %s: %s %s", addr_str, strerror(sock_err->ee_errno), addr_remote_str);
-+									if ((sock_err->ee_errno == ECONNREFUSED) || /* knet is not running on the other node */
-+									    (sock_err->ee_errno == ECONNABORTED) || /* local kernel closed the socket */
-+									    (sock_err->ee_errno == ENONET)       || /* network does not exist */
-+									    (sock_err->ee_errno == ENETUNREACH)  || /* network unreachable */
-+									    (sock_err->ee_errno == EHOSTUNREACH) || /* host unreachable */
-+									    (sock_err->ee_errno == EHOSTDOWN)    || /* host down (from kernel/net/ipv4/icmp.c */
-+									    (sock_err->ee_errno == ENETDOWN)) {     /* network down */
-+										struct knet_host *host = NULL;
-+										struct knet_link *kn_link = NULL;
-+										int link_idx, found = 0;
-+
-+										for (host = knet_h->host_head; host != NULL; host = host->next) {
-+											for (link_idx = 0; link_idx < KNET_MAX_LINK; link_idx++) {
-+												kn_link = &host->link[link_idx];
-+												if (kn_link->outsock == sockfd) {
-+													if (!cmpaddr(&remote, &kn_link->dst_addr)) {
-+														found = 1;
-+														break;
-+													}
-+												}
-+											}
-+											if (found) {
-+												break;
-+											}
-+										}
-+
-+										if ((host) && (kn_link) &&
-+										    (kn_link->status.connected)) {
-+											log_debug(knet_h, KNET_SUB_TRANSP_UDP, "Setting down host %u link %i", host->host_id, kn_link->link_id);
-+											/*
-+											 * setting transport_connected = 0 will trigger
-+											 * thread_heartbeat link_down process.
-+											 *
-+											 * the process terminates calling into transport_link_down
-+											 * below that will set transport_connected = 1
-+											 */
-+											kn_link->transport_connected = 0;
-+										}
-+
-+									}
- 								}
- 							}
- 							break;
-@@ -436,5 +476,9 @@ int udp_transport_link_dyn_connect(knet_handle_t knet_h, int sockfd, struct knet
- 
- int udp_transport_link_is_down(knet_handle_t knet_h, struct knet_link *kn_link)
- {
-+	/*
-+	 * see comments about handling ICMP error messages
-+	 */
-+	kn_link->transport_connected = 1;
- 	return 0;
- }
diff --git a/SPECS/kronosnet.spec b/SPECS/kronosnet.spec
index 4f0cb3b..882ab29 100644
--- a/SPECS/kronosnet.spec
+++ b/SPECS/kronosnet.spec
@@ -82,15 +82,12 @@
 
 Name: kronosnet
 Summary: Multipoint-to-Multipoint VPN daemon
-Version: 1.22
+Version: 1.24
 Release: 2%{?dist}
 License: GPLv2+ and LGPLv2+
 URL: http://www.kronosnet.org
 Source0: http://www.kronosnet.org/releases/kronosnet-%{version}.tar.gz
 
-Patch0: bz2112924-fix-dst_seq_num_init-race.patch
-Patch1: bz2112924-icmp-faster-link-down-detection.patch
-
 # Build dependencies
 BuildRequires: gcc
 # required to build man pages
@@ -138,8 +135,6 @@ BuildRequires: autoconf
 
 %prep
 %setup -q -n %{name}-%{version}
-%patch0 -p1 -b .bz2112924-fix-dst_seq_num_init-race
-%patch1 -p1 -b .bz2112924-icmp-faster-link-down-detection
 
 %build
 %if %{defined buildautogen}
@@ -513,7 +508,7 @@ meta package to install all of libknet1 plugins
 %package -n kronosnet-tests
 Group: System Environment/Libraries
 Summary: kronosnet test suite
-Requires: libknet1%{_isa} = %{version}-%{release}
+Requires: libknet1 = %{version}-%{release}
 Requires: libnozzle1%{_isa} = %{version}-%{release}
 
 %description -n kronosnet-tests
@@ -530,15 +525,19 @@ Requires: libnozzle1%{_isa} = %{version}-%{release}
 %endif
 
 %changelog
-* Wed Aug 03 2022 Christine Caulfield <ccaulfie@redhat.com> - 1.22-2
-  Fix "node randomly not rejoining cluster after a pcs cluster stop/start"
-  Resolves: rhbz#2112924
+* Wed Jul 27 2022 Christine Caulfield <ccaulfie@redhat.com> - 1.24-2
+  Don't run nozzle_up_down tests, as they don't work in RH CI
+  Resolves: rhbz#2024095
+
+* Wed Jul 27 2022 Christine Caulfield <ccaulfie@redhat.com> - 1.24-1
+  Rebase to 1.24
+  Resolves: rhbz#2024095
 
 * Thu Sep 16 2021 Christine Caulfield <ccaulfie@redhat.com> - 1.22-1
   Rebase to 1.22
   Resolves: rhbz#1999976
 
-  * Wed Sep 23 2020 Christine Caulfield <ccaulfie@redhat.com> - 1.18-1
+* Wed Sep 23 2020 Christine Caulfield <ccaulfie@redhat.com> - 1.18-1
   Rebase to 1.18
   Resolves: rhbz#1855301