Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop #1

Open
wants to merge 8 commits into
base: develop
Choose a base branch
from
Open

Conversation

DanielJuravski
Copy link

DLEP discovery message is sent with TTL 255 and discovery is for local LAN only.
Thus radio need to filter all packets with destination address equals to multi-cast discovery address and not pass it to AIR.
Added functionality for radio to filter out discovery packets based on multi cast discovery address.

@jgiovatto
Copy link
Contributor

Is it safe to assume ALL downstream packets are ETH_IP ?
//get ipv4 addr destination of the packet

  • std::uint32_t addrV = ((Utils::Ip4Header*) ((Utils::EtherHeader*) v.iov_base + 1))->u32Ipv4dst;

@DanielJuravski
Copy link
Author

Added check that packet is IPv4 packet. If packet is IPv4, then we check if packet has dlep multicast address.

@DanielJuravski
Copy link
Author

Hello,
I fixed the bug were talking about, and added the check if the packet is an IP packet.
Your feedback can be helpful for me.
Regards.

@jgiovatto
Copy link
Contributor

Hi,
Your approach makes the assumption that the data in the downstream pkt is Ethernet. At this layer the data is considered opaque. The more correct approach would be filter these at the emulator data entry point.

I suspect EMANE::RawTransport would encounter this problem regardless of the IP.TTL and an ip tables rule would help if using the EMANE::Virtual transport.

Are you using an EMANE Transport or something custom?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants