Я написал свой сканер портов на языке Rust при помощи библиотеке std::net. Почему У меня зависает программа если ввести другое значение

Например если я изменю значение переменной my_host на 192.168.1.0 или на любой другой адрес, то программа просто перестанет отвечать как исправить данную проблему в приведенном коде ниже:

use std::net::TcpStream;

fn tcp_scan(host: String){
    for port in 1..1024{
        let mut ip = String::from(&host);
        ip.push_str(":");
        ip.push_str(&port.to_string());

        if let Ok(_) = TcpStream::connect(&ip){
            println!("This {} port is open", ip);
        } else {
            continue;
        }
    }
}

fn main(){
    let my_host = String::from("192.168.1.0");
    tcp_scan(my_host);
}

Ответы (0 шт):