Comments (12)
Hi, thank you for taking the time to report your issue 👍
However, I don't understand how these values can be negative. Could you tell me:
- What is your operating system?
- Which version of icmplib are you using?
- Does the phenomenon reproduce systematically?
- Do you have the same results when you ping the same IP addresses?
- Finally, can you test with another computer?
Thank you in advance for your answers 😄
From my side, I just retested on different platforms and I do not encounter this problem.
from icmplib.
I hope my questions didn't scare you! 😄
from icmplib.
I close this issue because I don't think the problem comes from this library. Nothing could explain it at the code level. If you encounter this problem again, feel free to open a new issue.
from icmplib.
sorry, I see it now.
1.operating system is macos
2.icmplib==2.0.1
3. the phenomenon occur by chance
But I think this issue can be closed, if i find the reason, I will back to write the reason
from icmplib.
I'm having this issue as well..
from icmplib.
I see something special about Linux. This all makes me think requests and replies are not being mapped appropriately. I'm running the library as sudo. Is that a problem?
from icmplib.
Hi @tkoch96!
Sorry, I forgot to answer your question.
The identifier and the sequence number are used to match an ICMP request and a response. In the event that you execute several pings simultaneously (threads or others), you must make sure that the identifier used is different. Concerning the sequence number, it is automatically incremented by one by the library. So you don't have to worry about this number.
Why is there a difference when you run the library with or without privileges? When the library is run with root privileges and the privileged parameter is True
, raw sockets are created. These sockets even intercept ICMP packets destined for other sockets. The identifier is therefore very important to link requests with the correct responses.
When using the library without privileges, DGRAM sockets are used. These sockets only receive the response associated with the request sent. This operation is handled by the Kernel automatically and therefore the identifier is of little use here. Otherwise, some systems such as Linux automatically replace this identifier with a random number.
I hope to have answered your question 😄
from icmplib.
What you said makes sense, but the problem remains that I'm seeing negative RTTs. I was trying to probe ~4k addresses every ~20s using multiping. Worked fine on Windows.
from icmplib.
You encounter this problem on the ping
or the multiping
function or both?
from icmplib.
In multiping
from icmplib.
Can you give me the parameters passed to the multiping
function so that I can reproduce the phenomenon?
By the way, what is your operating system and its version, as well as the version of icmplib?
Finally, can you install an older version of icmplib (1.2.2) and tell me if you still experience this behavior?
pip3 uninstall icmplib
pip3 install icmplib==1.2.2
Thanks 😃
from icmplib.
The multiping
function will be completely rewritten in the next version. The bug you see will definitely be fixed. Therefore, I close this issue.
from icmplib.
Related Issues (20)
- Enhancement: class Host to return a dict with it's data HOT 1
- The regular time.time() function does not work well in Windows, rtt = 0 HOT 2
- Can only receive the last hop using traceroute on Windows HOT 3
- The future of icmplib
- traceroute only provides last hop HOT 1
- samsung.com - Packetloss 100.0% HOT 1
- Add the ability to set the DF flag and get MTU size feedback from the ICMP protocol.
- Actual license is unclear: is it LGPLv3 or LGPLv3+? HOT 1
- Add reply payload retrieval and checking HOT 1
- The traceroute under ipv6 only displays the last hop HOT 5
- Whats the difference between icmpLib and the icmpLibv2(forked from IcmpLib) ? HOT 3
- Use predefined socket either SOCK_DGRAM / SOCK_RAW on every invocation of ping API HOT 1
- After upgrading to ubuntu 22.04 sysctl changes are needed again HOT 3
- Feature: auto-detect best "privileged" setting HOT 3
- Feature: unprivileged traceroute HOT 4
- Error on running very basic Ping command HOT 1
- Running traceroute only returns final hop HOT 1
- Make payload more flexible HOT 2
- Unnecessary last `sleep()` in `multiping()` HOT 2
- Feature: Async traceroute
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from icmplib.