порт-е командния ред помощна програма и библиотека Python, която ви помага с местните TCP портове Managment.
Тя може да намерите неизползван TCP Localhost порт и не забравяйте сдружението.
Това може да бъде полезно, когато инсталирате една купчина от софтуер с множество части, които се нуждаят номера на портове.
<Силен>
Забележка
Ако търсите за временно пристанище след socket.bind ((домакин, 0)) е най-добре:
>>> Гнездо внос
>>> S = socket.socket ()
>>> S.bind (("", 0))
>>> S.getsockname ()
("0.0.0.0", 54485)
Необходимо е порт-за, когато имате нужда от постоянна безплатна местно номер на порт.
порт-е точно обратното на s.bind ((домакин, 0)) е чувството, че не трябва да се върне пристанища че s.bind ((домакин, 0)) могат да се върнат (защото такива пристанища вероятно ще бъдат временно преназначени от OS).
Има няколко правила, порт-за се опитват да следват, за да се намери и върне нов неизползван пристанище:
1. Port трябва да бъде неизползван: порт-за проверки това, като се опитва да се свърже с пристанището и да се свързва с него.
2. Port трябва да IANA незададен и по друг начин не добре познати: това е лошо от желаното от поддържане незададен списък пристанища (разбор от IANA и Wikipedia).
3. Port не трябва да бъде вътре ефимерно гама порт. Това е важно, защото пристанища от краткотрайното гама порт може да бъде назначен временно от OS (например чрез IP стека на устройството) и това може да предотврати рестартира услугата при някои обстоятелства. gimme_port не се връща пристанища от ефимерни пристанищни диапазони конфигурират по текущата машината.
4. Други евристични методи се прилагат и: порт-за опитва да се върне на пристанището от големите пристанищни обхвати; Той също така не се връща пристанища, които са твърде близки до известни пристанища.
<Силен> Монтаж
Цялата система:
Sudo easy_install порт-за
<Силен> Script употребата
порт-за
Тази програма не всъщност свързва пристанището или друго пречи на пристанището да бъде взето от друг софтуер. Той обаче се опитва да изберете порт, който е по-малко вероятно да се използва от друг софтуер (и това е неизползван в момента на повикване, разбира се). Utility също, че порт-за бар няма да се върне на същото пристанище като порт-за Foo на същата машина.
$ Sudo порт-за Foo
37987
$ Sudo порт-за Foo
37987
Можете също така да искате да се появява пред името си ап:
$ Sudo порт-за instance1.apache
35456
Моля, имайте предвид, че порт-за скрипт изисква да четат и пишат на достъп до /etc/port-for.conf така Sudo може да бъде необходимо, за да го стартирате.
<Силен> Library употребата
>>> Внос port_for
>>> Port_for.select_random ()
37774
>>> Port_for.select_random ()
48324
>>> 80 в port_for.available_good_ports ()
Фалшив
. Копаят в изходния код за повече
<силни> Изисквания :
- Python
Коментари не е намерена