All Questions
27 questions
1
vote
1
answer
486
views
What is header-data split and why it's needed for TCP_ZEROCOPY_RECEIVE page alignment?
I'm currently investigating about TCP_ZEROCOPY_RECEIVE and I read that it requires header-data split support of NIC.
As far as I understand, this feature is to DMA the header (IP, TCP headers) and ...
1
vote
1
answer
840
views
Applying patch file to ubuntu server
Can someone please explain how to apply a patch file to ubuntu server kernel? I'm trying to apply this patch file which enables the tcp_collapse_max_bytes option in the TCP communication options on an ...
0
votes
1
answer
130
views
How to access port number of a TCP connection (for coding) from a kernel source code?
I am trying to write a congestion control algorithm (like TCP cubic, reno) in net/ipv4/ folder. For that, I want to use the established TCP connection port number in the code. How to get a port number ...
2
votes
3
answers
1k
views
How to SSH to over 2000 nodes?
The first thing we're going to do is get simple information from over 2,000 servers with ssh, but I want this to be over in 30 seconds.
The use of GNU Parallel and Python paramiko+multiprocessing
Both ...
21
votes
3
answers
39k
views
What exactly happens when I enable net.ipv4.ip_forward=1?
Suppose I have this situation where I wrote a program to poison the ARP cache of 2 devices (let's say A and B), both in the local network to successfully able to MITM from device M. The program runs ...
-2
votes
1
answer
416
views
How to get open connections statistics without ss or netstat
The question may sound silly but I'm trying to make a tool that uses ss data. Sadly I'm having some troubles regarding output format parsing (too much randomness depending on version and system).
So, ...
1
vote
1
answer
2k
views
How does buffering for TCP packets work?
If I write a few times in a quick succession on a socket (with the POSIX function write), usually all the data I wrote gets sent in a single TCP packets. Unless I write too much or unless I wait too ...
2
votes
2
answers
752
views
How does the TCP/IP protocol differentiate between clients?
If we create a listening socket it will return us a descriptor (let say root descriptor) and we are binding this descriptor to a address. Whenever a new client connection is available the root ...
1
vote
1
answer
787
views
Test iptables from localhost
I have a Linux system with two interfaces lo and eth0, I have some iptables rules which will block some tcp ports.
It's possible to teste my own firewall rules by implementing a probing service to ...
1
vote
0
answers
569
views
kernel TCP/IP implementation - about accept queue
I'm recently learning the TCP/IP implementation in linux kernel(version 4.4), and got really confused about the accept queue. I know there is a queue in struct inet_connection_sock which is called a ...
2
votes
1
answer
763
views
How to change TCP congestion control algorithm on OpenBSD?
On FreeBSD, I can change the TCP congestion control algorithm via net.inet.tcp.cc.algorithm.
On OpenBSD, there is no net.inet.tcp.cc.algorithm parameter.
So, here is the question:
How to change TCP ...
4
votes
3
answers
11k
views
How to check what congestion algorithm supported on my linux kernel?
I want to enable google bbr on my VPS. But I don't know this feature is integrated on linux kernel or not. How can I check it?
2
votes
1
answer
912
views
Get amount of fast retransmissions from TCP Info
I'm trying to fetch the amount of fast retransmissions from the TCP Info struct. As there is multiple different variables that seem to hold retransmissions, I'm unsure which holds the amount of fast ...
1
vote
0
answers
2k
views
Kill an existing TCP connection quickly
I'm working on a pentesting project, and I have the following setup: I have an SSH daemon that is trying to log all of the activity happening on SSH connections out to another server. I'm trying to ...
9
votes
2
answers
7k
views
How to limit range of random port sockets?
There's a binary that I need to run which uses bind with a port argument of zero, to get a random free port from the system. Is there a way I can constrain the range of ports the kernel is allowed to ...