How to use SO_REUSEADDR in 2.6.32 kernel to avoid 'Address already in use' error with SCTP
I bumped into the error while a java process generates traffic at port 3868 via SCTP.The port is already occupied by a process running on TCP protocol but I need to reuse the same port number 3868 anyhow with the same kernel version 2.6.32. I found using SO_REUSEADDR as a solution to be used but I am unfamiliar to socket programming and how to hack the kernel to get this done . Could someone please assist.
Meanwhile I also had a look at lksctp-tools-1.1.10 specfiles and kernel patches but I could not find out a solution.Besides in Redhat 7 versions the solution is to upgrade to the kernel version 3.10.0-514-6.1.el7 but I can not adapt this method due to version mismatch.
Error:
SCTP application says "Address already in use" or EADDRINUSE
An SCTP client connects to a server. The SCTP handshake of INIT, INIT_ACK, COOKIE_ECHO,COOKIE_ACK, DATA, ACK works fine. The server sends SHUTDOWN and the client cannot connect to the server again.
Work history:
I searched a lot on this and found something like this for TCP but not SCTP:
/proc/sys/net/ipv4/tcp_tw_recycle
/proc/sys/net/ipv4/tcp_tw_reuse
Is there any such hack for SCTP as well in kernel?
Is there a way to backport 3.10.0-514.6.1.el7 to 2.6.32-696.16.1.el6 for only certain patches that had SCTP enables for SO_REUSEADDR?
Is it not possible to port the patch from the later kernel versions to the previous version .... if the answer is NO/YES then what are the reasons/challenges?
Answers
-
so you basically went to find random free ports fro a quick search you can just use this
https://stackoverflow.com/questions/2675362/how-to-find-an-available-port0
Categories
- All Categories
- 177 LFX Mentorship
- 177 LFX Mentorship: Linux Kernel
- 769 Linux Foundation IT Professional Programs
- 379 Cloud Engineer IT Professional Program
- 175 Advanced Cloud Engineer IT Professional Program
- 75 DevOps IT Professional Program - Discontinued
- 7 DevOps & GitOps IT Professional Program
- 102 Cloud Native Developer IT Professional Program
- 7.6K Training Courses & Learning Paths
- 7 AI & ML Training
- 1 Blockchain & Decentralized Identity Training
- 16 Cloud & Containers Training
- 2 Cybersecurity Training
- 2 DevOps & Site-Reliability Training
- 1 Linux Kernel Development Training
- 2 Networking Training
- 2 Open Source Best Practice Training
- 4 System Administration Training
- 1 System Engineering Training
- 2 Web & Application Development Training
- 796 Hardware
- 202 Drivers
- 68 I/O Devices
- 37 Monitors
- 95 Multimedia
- 173 Networking
- 91 Printers & Scanners
- 91 Storage
- 771 Linux Distributions
- 81 Debian
- 68 Fedora
- 23 Linux Mint
- 13 Mageia
- 24 openSUSE
- 151 Red Hat Enterprise
- 31 Slackware
- 13 SUSE Enterprise
- 356 Ubuntu
- 466 Linux System Administration
- 31 Cloud Computing
- 73 Command Line/Scripting
- Github systems admin projects
- 98 Linux Security
- 79 Network Management
- 101 System Management
- 46 Web Management
- 128 Mobile Computing
- 20 Android
- 93 Development
- 1.2K New to Linux
- 1K Getting Started with Linux
- 401 Off Topic
- 125 Introductions
- 32 Study Material
- 1K Programming and Development
- 310 Kernel Development
- 705 Software Development
- 1K Software
- 409 Applications
- 182 Command Line
- 5 Compiling/Installing
- 70 Games
- 318 Installation
- Archived
- 183 Small Talk
- 2 LFD140 Class Forum
- 1.4K LFS258 Class Forum
Upcoming Training
-
August 20, 2018
Kubernetes Administration (LFS458)
-
August 20, 2018
Linux System Administration (LFS301)
-
August 27, 2018
Open Source Virtualization (LFS462)
-
August 27, 2018
Linux Kernel Debugging and Security (LFD440)