Fast algorithm to compare an IP address against a list of IP sections?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Fast algorithm to compare an IP address against a list of IP sections?
# 8  
Old 11-27-2010
I don't know if it's efficient enough:

Code:
perl -MSocket -lane'  
    push @r, [ 
      unpack ("N", inet_aton $F[0]), 
      unpack ("N", inet_aton $F[1]), 
      $F[2] 
      ] and next if @ARGV;

    $n = unpack "N", inet_aton $F[0];
    $c = $_;

    do {
      print "$c\t$_->[2]" and last 
        if $_->[0] <= $n && $n <= $_->[1]
        }  for @r
        ' file1 file2

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

IP address list padding with 0

Hi All, I'm hoping one of you helpful lot could come up with a way I can do the below. I've been trying to think how is best but have struggled to come up with a way. I have a list of IP addresses in the below format 1.1.1.1 102.1.2.3 102.102.1.10 102.102.102.1 I need to compare... (4 Replies)
Discussion started by: mutley2202
4 Replies

2. Shell Programming and Scripting

List the IP address of list of servers

Hi I have a file containing server names and i can ssh to all these servers without password. Could any body suggest me how to list out IP address of all the servers? Now i am manually doing this, like ssh to each server and run "ifcong -a" command and copy the ipaddress to a excel sheet.... (5 Replies)
Discussion started by: kumar85shiv
5 Replies

3. Shell Programming and Scripting

Compare IP Address from nslookup and file

Hi, I am trying to compare IP address of a server using nslookup with IP address in a file (serverlist). And if there is a difference in IP, it should send an email. But there is some error in the pgm... Please help... #!/usr/bin/ksh for server in `cat serverlist` do old_ip=`cat... (12 Replies)
Discussion started by: vkk
12 Replies

4. UNIX for Dummies Questions & Answers

compare / difference between sub-sections of files

Hi there, I'm sure this question has been asked many times but I can't find any posts with information. How can I check the differences between say lines 20 - 200 in file1 and lines 420 - 600 in file2? Thanks in advance for any help! js (2 Replies)
Discussion started by: js8765
2 Replies

5. Shell Programming and Scripting

ksh - how to list all ip address between 2 ip address

Trying to do a ksh script that needs to list all ip address between ip address a and b .. ie. Ip address A=192.168.1.200 Ip address B=192.168.2.15 So the subnet changes from 1 to 2 but I want to list all possible ip addresses between the 2.. Which would be: 192.168.1.200... (4 Replies)
Discussion started by: frustrated1
4 Replies

6. UNIX for Advanced & Expert Users

fast way to retreive a list of lines

hi there, i have to read lines from the file, where the line is just above the pattern am looking for typically this looks like this <time-stamp>|----- <pattern am searching >...... <time-stamp>|..... <some garbage > .... the log file is big wc -l ~/log/ompe.log.20081203... (8 Replies)
Discussion started by: kiranreddy1215
8 Replies

7. Shell Programming and Scripting

script to compare two files of mac address

Hi I need to write a bash shell script. I have two separate text files. One file contains a list of MAC addresses taken from a network scan, the other contains a list of MAC addresses for our currently-managed devices. How can I compare these two files, and output a list of addresses that have... (6 Replies)
Discussion started by: borderblaster
6 Replies

8. UNIX for Dummies Questions & Answers

send email from address list and subject list

Hello, Here is my problem. there are two files. first.txt <<< contains email address ====== abc@mail.com abd@mail.com abe@mail.com second.txt <<< contains webpage links ======== http//www.test.com/abc/index.html http://www.test.com/abd/index.html http://www.test.com/abe/index.html... (2 Replies)
Discussion started by: paulds
2 Replies

9. UNIX for Dummies Questions & Answers

Slow from static IP ... fast from NAT address

Has anyone had an issue where: If I telnet into a unix machine on my network, from within my natted address, there is no speed issue. When I telnet to the same machine using the static address, it is very very slow. This SCO 5.06. There is no nameserver running. Please help. I have... (3 Replies)
Discussion started by: gseyforth
3 Replies

10. Shell Programming and Scripting

fast searching algorithm

hello, i need a searching algorithm in unix. since my input file is very bulky, so need a real fast searching algorithm, to match words. i am already using grep. (3 Replies)
Discussion started by: rochitsharma
3 Replies
Login or Register to Ask a Question
SYSTEM.ROOTDAEMONRC(1)					      General Commands Manual					    SYSTEM.ROOTDAEMONRC(1)

NAME
system.rootdaemonrc, .rootdaemonrc - access control directives for ROOT daemons LOCATIONS
ROOTDAEMORC, $HOME/.rootdaemonrc /etc/root/system.rootdaemonrc, $ROOTSYS/etc/system.rootdaemonrc DESCRIPTION
This manual page documents the format of directives specifying access control directives for ROOT daemons. These directives are read from a text file whose full path is taken from the environment variable ROOTDAEMONRC. If such a variable in undefined, the daemon looks for a file named .rootdaemonrc in the $HOME directory of the user starting the daemon; if this file does not exists either, the file system.root- daemonrc, located under /etc/root or $ROOTSYS/etc, is used. If none of these file exists (or is readable), the daemon makes use of a default built-in directive derived from the configuration options of the installation. FORMAT
* lines starting with '#' are comment lines. * hosts can specified either with their name (e.g. pcepsft43), their FQDN (e.g. pcepsft43.cern.ch) or their IP address (e.g. 137.138.99.73). * host names can be followed by :rootd, :proofd or :sockd to define directives applying only to the given service; 'sockd' applies to servers run from interactive sessions (TServerSocket class) * directives applying to all host can be specified either by 'default' or '*' * the '*' character can be used in any field of the name to indicate a set of machines or domains, e.g. pcepsft*.cern.ch applies to all 'pcepsft' machines in the domain 'cern.ch'. (to indicate all 'lxplus' machines you should use 'lxplus*.cern.ch' because inter- nally the generic lxplus machine has a real name of the form lxplusnnn.cern.ch; you can also use 'lxplus' if you don't care about domain name checking). * a whole domain can be indicated by its name, e.g. 'cern.ch', 'cnaf.infn.it' or '.ch' * truncated IP address can also be used to indicate a set of machines; they are interpreted as the very first or very last part of the address; for example, to select 137.138.99.73, any of these is valid: '137.138.99', '137.138', '137`, '99.73'; or with wild cards: '137.13*' or '*.99.73`; however, '138.99' is invalid because ambiguous. * the information following the name or IP address indicates, in order of preference, the short names or the internal codes of authen- tication methods accepted for requests coming from the specified host(s); the ones implemented so far are: Method nickname code UsrPwd usrpwd 0 SRP srp 1 Kerberos krb5 2 Globus globus 3 SSH ssh 4 UidGid uidgid 5 (insecure) (The insecure method is intended to speed up access within a cluster protected by other means from outside attacks; should not be used for inter-cluster or inter-domain authentication). Methods non specified explicitly are not accepted. For the insecure method it is possible to give access only to a specific list of users by specifying the usernames after the method separated by colons (:) example: uidgid:user1:user2:user3 will allow uidgid access only to users user1, user2 and user3. This is useful to give easy access to data servers. It is also possi- ble to deny access to a user by using a '-' in front of the name: uidgid:-user4 * Lines ending with '' are followed by additional information for the host on the next line; the name of the host should not be repeated. EXAMPLES
Valid examples: default none All requests are denied unless specified by dedicated directives. default 0 ssh Authentication mechanisms allowed by default are 'usrpwd' (code 0) and 'ssh' 137.138. 0 4 Authentication mechanisms allowed from host in the domain 137.138. (cern.ch) are 'usrpwd' (code 0) and 'ssh' pceple19.cern.ch 4 1 3 2 5 0 All mechanisms are accepted for requests coming from host pceple19.cern.ch . lxplus*.cern.ch 4 1 globus 0:qwerty:uytre Requests from the lxplus cluster can authenticate using 'ssh', 'srp' and 'globus'; users 'qwerty' and 'uytre' can also use 'usrpwd' . pcep*.cern.ch:rootd 0:-qwerty 4 Requests from the pcep*.cern.ch nodes can authenticate using 'usrpwd' and 'ssh' when accessing the 'rootd' daemon ; user 'qwerty' can only use 'ssh'. SEE ALSO
rootd(1), proofd(1) For more information on the ROOT system, please refer to http://root.cern.ch/ . ORIGINAL AUTHORS
The ROOT team (see web page above): Rene Brun and Fons Rademakers COPYRIGHT
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as pub- lished by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MER- CHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foun- dation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA AUTHOR
This manual page was written by G. Ganis <g.ganis@cern.ch> . ROOT
Version 4 SYSTEM.ROOTDAEMONRC(1)