RE: Linux Kernel Module program to obtain domain name from IP

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thank you for your responses sirs and the advice. My target is to,

1. Intercept SYN packet
2. Obtain the destination IP address
3. Resolve the TLD of that IP
4. then bind each packet to queues depending on the TLD

I will check on nslookup, open DNS client utilities and dns_resolver libraries as you experts suggested :)

Best Regards,
H. Hasitha Shan




Date: Tue, 8 Jul 2014 15:20:16 +0200
Subject: Re: Re: Linux Kernel Module program to obtain domain name from IP
From: kristofer.hallin@xxxxxxxxx
To: kristof@xxxxxxxxxx
CC: kernelnewbies@xxxxxxxxxxxxxxxxx; shhuiw@xxxxxxx; sudipm.mukherjee@xxxxxxxxx; hh_shan@xxxxxxxx

There's a research project called Name Based Sockets where this have been done.

Take a look at: https://www.sics.se/projects/name-based-sockets

If you search for name based sockets on Google you will find a kernel module and user space code doing this.

On 8 Jul 2014 15:07, "Kristof Provost" <kristof@xxxxxxxxxx> wrote:
On 2014-07-08 20:19:09 (+0800), shhuiw <shhuiw@xxxxxxx> wrote:
> DNS loopkup should use UDP packet, and you have to construct UDP request
> based on your captured IP addresses in your module.
DNS can actually use both TCP and UDP.

> And you have to use DNS server fallback lists and time-out control if some DNS
> server cannot work well.

Yeah. Doing DNS lookups (forward or reverse) is complicated.
There's a dns_query function in the kernel (net/dns_resolver), which
apparently upcalls into user space, but I'd avoid dealing with DNS in
the kernel at all.

Just pass the IP address to user space and let it deal with it. There
are plenty of DNS libraries available. Odds are you need to pass the
resulting information to user space anyway, so you're not really losing
anything.

What are you trying to accomplish anyway?

Regards,
Kristof

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux