[#387246] newbie question — sunny parker <info@2020proj.com>

i am coming from php and dont seem to quite understand how ruby works

13 messages 2011/09/01

[#387330] installing naive bayes classifier — aya abdelsalam <ayoya_91@...>

Hello

10 messages 2011/09/02

[#387344] Beginner needing help - Writing right-angle triangle program — Kane Williams <theburrick@...>

I've been going through a Haskell tutorial (Just to see what it's like)

12 messages 2011/09/03

[#387356] Which version should I download? — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

Im new to programming and Im thinking of downloading and starting with

17 messages 2011/09/03

[#387392] loops problem — jack jones <shehio_22@...>

for (j = @array.length ; j > counter ; j = j-1) # counter is a variable

13 messages 2011/09/04

[#387469] posts on Unix systems programming — Eric Wong <normalperson@...>

I would like to do a series of mailing list posts on the subject of Unix

28 messages 2011/09/06

[#387530] Unexpected behavior of Ruby array — Suvankar Satpati <suvankar.17@...>

I was going through the exercises at http://rubykoans.com/ and got

11 messages 2011/09/08

[#387544] Executing the output of a look — dwight schrute <spambocks@...>

Hi,

14 messages 2011/09/08

[#387586] Creating a hash from two arrays — simon harrison <simonharrison.uk@...>

Hi. Can anyone help with this? I'd like to end with a hash like so:

15 messages 2011/09/09

[#387596] newbie ruby installation malloc issue — "mark e." <mark_f_edwards@...>

hi all -

12 messages 2011/09/09

[#387614] how to write data in binary to a file? — frank hi <yw_hi@163.com>

Hi,

11 messages 2011/09/10

[#387646] How do I make output generate a float without an excess numbers of decimal places? — Kane Williams <theburrick@...>

For example, my current code is

11 messages 2011/09/11

[#387725] Any downsides to writing paranthesises? — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

Im a newbie programmer who is trying to learn Ruby after having just

18 messages 2011/09/12

[#387811] Get interpreter path — Michal Suchanek <hramrach@...>

Hello,

26 messages 2011/09/14
[#387842] Re: Get interpreter path — Phillip Gawlowski <cmdjackryan@...> 2011/09/14

On Wed, Sep 14, 2011 at 3:35 PM, Michal Suchanek <hramrach@centrum.cz> wrot=

[#387844] Re: Get interpreter path — Michal Suchanek <hramrach@...> 2011/09/14

On 14 September 2011 20:47, Phillip Gawlowski <cmdjackryan@gmail.com> wrote:

[#387814] Tough Ruby Homework — Rory Pascua <rorypascua@...>

I'm trying to take a long piece of text, find a word, and get that word

18 messages 2011/09/14

[#387853] Can I Safely Use Rubinius While Learning? — Aaron Jackson <jacksonaaronc@...>

Greetings,

18 messages 2011/09/15

[#387915] Some newbie questions — Vladimir Van Bauenhoffer <cluny_gisslaren@...>

I got some newbie questions which I would very much appreciate if

14 messages 2011/09/15

[#388003] Ruby Speed Question — Kevin Anon <oblivious.sage@...>

Wrote my first Ruby program recently for a class assignment where we had

12 messages 2011/09/18

[#388078] appending \n to each element in an array — Joe Collins <joec_49@...>

I have an array

13 messages 2011/09/20

[#388123] Turning on a special program at special time and turning off the computer at another special time — "amir e." <aef1370@...>

I decided to write a program in RUBY wherein these items have been done

11 messages 2011/09/21
[#388124] Re: Turning on a special program at special time and turning off the computer at another special time — andrew mcelroy <sophrinix@...> 2011/09/21

That sounds like a program a special program a terrorist would write. Are

[#388198] Conditional statements with multiple arguments — "Thomas B." <sinixlol@...>

Good afternoon everyone,

18 messages 2011/09/24

[#388203] Ruby 1.9.3 RC1 is out — "Yuki Sonoda (Yugui)" <yugui@...>

-----BEGIN PGP SIGNED MESSAGE-----

19 messages 2011/09/24
[#388208] Re: [ANN] Ruby 1.9.3 RC1 is out — Quintus <sutniuq@...> 2011/09/24

-----BEGIN PGP SIGNED MESSAGE-----

[#388209] Re: [ANN] Ruby 1.9.3 RC1 is out — Chris White <cwprogram@...> 2011/09/24

[#388214] Re: [ANN] Ruby 1.9.3 RC1 is out — Quintus <sutniuq@...> 2011/09/24

-----BEGIN PGP SIGNED MESSAGE-----

[#388216] Re: [ANN] Ruby 1.9.3 RC1 is out — Yusuke Endoh <mame@...> 2011/09/24

Hello,

[#388248] Looking for better/familiar approach to command line opts — "Perl J." <perljunkie@...>

So I guess the warning to the reader upfront is... I'm a bit of a Perl

14 messages 2011/09/25

[#388333] Get all classes from a list of files — Jeroen van Ingen <jeroeningen@...>

I have a list of ruby files. I would like to create objects from all

11 messages 2011/09/28

[#388342] Ruby Syntax @keywords ||= [ ] — Bhavesh Sharma <sharmabhavesh@...>

Sorry if this comes across as a dumb question, but what does the

11 messages 2011/09/28

[#388366] IO.readlines will not accept variable with file name Why? — Joda jenson <jodajen2@...>

I am fairly new to Ruby and I am stuck on this. Would someone have a

13 messages 2011/09/29
[#388368] Re: IO.readlines will not accept variable with file name Why? — Robert Klemme <shortcutter@...> 2011/09/29

On Thu, Sep 29, 2011 at 11:14 AM, Joda jenson <jodajen2@yahoo.com> wrote:

Re: ping sweep and threads

From: Robert Klemme <shortcutter@...>
Date: 2011-09-27 12:52:15 UTC
List: ruby-talk #388310
On Tue, Sep 27, 2011 at 2:11 PM, Panagiotis Atmatzidis
<ml@convalesco.org> wrote:

> I'm looking for a quick to scan the local network (/24). I choose to use =
'net-ping' gem, since I'm working under Ruby 1.9 and 'ping' is not availabl=
e by default.
> I use the 'external' ping because it's way faster but still very slow. It=
 takes like 2 minutes to 'ping' 254 addresses with a 2 hosts 'up'. So I dec=
ided to make it a bit faster by using threads. Since I have no prior experi=
ence with Threads, I've read a couple of articles about ruby threads and he=
re is the code that I came up with:
>
> ------------------------
> require 'net/ping'
>
> network =3D '192.168.1.'
> list =3D []
> host_up =3D []
> host_down =3D []
> x =3D 1
> while x < 255
> =A0ip =3D network + x.to_s
> =A0list.push(ip)
> =A0x +=3D 1
> end
> list.each { |x|
> =A0t =3D Thread.new {
> =A0 =A0pt =3D Net::Ping::External.new(x)
> =A0 =A0if pt.ping
> =A0 =A0 =A0host_up.push(x)
> =A0 =A0else
> =A0 =A0 =A0host_down.push(x)

You need to properly synchronize since host_up and host_down are
shared between threads.  But in your case you can get rid of them
completely and just output x if pt.ping returns true.

> =A0 =A0end
> =A0}
> }
>
> puts host_up
> -------------------------
>
> First thing, do I use Threads the right way?

You should at least wait for all threads to finish (i.e. by joining).

threads =3D list.map { |x|
 Thread.new {
  # ...
 }
}

threads.each {|th| th.join}


> Second, Trying to find out whats going on from 'lsof -i', I counted 155 s=
imultaneous connections but not more. It should be 254 in theory?

Maybe some ulimit getting in the way.  Try

$ ulimit -a

You should probably also do this at the top to see errors:

Thread.abort_on_exception =3D true

> Third, do you think that is there any faster way in scanning weather a ho=
st is up or not? I understand that this is a more general question, but too=
ls like 'ettercap' scan a /24 network in less than 10 seconds on the same m=
achine same network, which makes me thing that I'm doing something wrong. I=
'm not experienced programmer, neither experienced with computer networks a=
t that level, like Alor and Naga (author's of ettercap) but then again, why=
 the difference is so big? :-/

Threads should be OK.  What Ruby version are you using?

Kind regards

robert

--=20
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

In This Thread