FMOFSP portāls

Izvēlne

Meklēšana

Aptauja

Kā tiec galā ar sesijas stresiem?
Stresa nav!
Eju vakcinēties
Prokrastinēju
Trenēju ķermeni, ne prātu
Netieku :(

Rezultāti

Foto

2009. gada 12. martā 00:28 

WiFi 250 metru savienojums (25)

Pienākuši laiki, kad jāsāk taupīt uz visu - elektrību, apģērbu, benzīnu, siltumu un visbeidzot ēdienu. Šoreiz mēģināsim arī ietaupīt uz interneta rēķina. Kā? Tas ir vienkārši - daudzi sametas vienam rēķinam.

Tai pašā laikā ir daudzas vietas, kur internets ir blakus mājā, bet vilkt vadu uz māju ir vienkārši bezjēgā dārgi un varbūt pat neiespējami. Piemēram, lai aizvilktu interneta vadu uz 250m attālo blakus māju, vidū būs vajadzīga elektriskā iekārta, kas pastiprinās signālu, jo no vienas tīkla iekārtas līdz otrai ir maksimāli pieļaujami 100m. Protams, es nerunāšu par optiku, jo tas krīzes apstākļos ir neiespējami.

Pastāstīšu praktisko pieredzi, kā izveidot bezvadu savienojumu starp 2 mājām, kas atrodas 250m attālumā.



Būtībā savienojumu nav sarežģīti izveidot, bet tas prasa finanses.

Kas Daudzums Cena
Linksys WRT54GL 2 x 50 Ls 100Ls
Cantenna 2 gab 130 $ 65Ls
RP-SMA - RP-TNC 2 x 3$ 3Ls
Kopā: 168Ls


Vēl papildus nepieciešami vadi un skrūves utt., bet tas jau ir atkarīgs no individuālas konstrukcijas. RP-SMA female to RP-TNC male connector nepieciešams, lai savienotu rūteri ar cantenna.

Nu tad ķersimies klāt. Tāmē es jau norādīju nepieciešamās lietas, lai izveidotu savienojumu. Cantenna un pārveidotāju no SMA uz TNC es iegādājos no eBay, bet Linksys - tepat no Latvju bāleliņu e-veikaliem.

Man vēl nav sanācis redzēt rūteri, kuram oriģinālā firmware atbalstītu WDS, tādēļ visiem silti iesaku dd-wrt. Ļoti stabila un funkcionāla firmware, to es pats lietoju un līdz šim neesmu sūdzējies.

Man saimniecībā mētājās viens lieks dir-300 rūteris, ko man uzdāvināja, kad iegādājos Lattelecom internetu. Es tam uzinstalēju dd-wrt un mēģināju izveidot savienojumu, bet īsti nekas nesanāca un nevienam neiesaku šo rūteri, ļoti nestabils. Laikam tādēļ to tik laipni Lattelecom visiem dāvināja. :)

Tad nu es ķēros pie darba - nokonfigurēju un katru rūteri noliku savā mājā. Bet - tikai 8% signāla stiprums. Pirmā doma man bija, ka lieli trokšņi un nekas nesanāks, bet problēma bija cita - jaukie un siltie pakešu logi krietni pavājina signālu. Atverot logu, tad savienojums jau bija 30% (vienā pusē joprojām caur pakešu logu). Lieliski, ne?

Nākamā problēma šajā savienojumā ir vecmammas. Ja vecmamma izrauj no kontakta rūteri, lai iespraustu gludekli vai kādu citu lietu, ko tur nu nekādi nevajadzētu spraust, tad iespraužot atpakaļ, tas automātiski neatjauno WDS savienojumu. Es nedaudz papētīju dd-wrt un atradu tur parametru WDS/Connection watchdog, bet izrādās, tas nestrādā nemaz tik jauki, cik gribētos. Watchdog restartē rūteri, ja nevar sasniegt otru rūteri, bet savienojums joprojām netiek atjaunots, vienīgā iespēja, kā man sanāca atjaunot savienojumu, bija nomainot WPA paroli abiem rūteriem. Tā kā manā tīklā katrā galā ir pa serverim, tad es uzrakstīju Ruby programmu, kas vienlaicīgi no abiem galiem sūta ping pieprasījumus un ja nesaņem atbildi, tad nomaina rūtera paroli. Tas nostrādāja.

Es domāju, ka pietiks gari stāstīt, cik jauki es tagad varu ietaupīt naudiņu, bet pastāstīšu par konfigurācijas parametriem. Es atvainojos, ka parametri ir angļu valodā, bet man šķiet, ka ir bezjēdzīgi tulkot tos latviski.

Linksys WRT300N
This router is configured as gateway to internet and DHCP server is activated on this.
IP address is set to 192.168.1.1.
There are only some open ports to server, like 80 & 25.

Linksys WRT54GL DD-WRT first router
Remember to connect network cable to LAN port (not WAN port).
IP address is set to 192.168.1.2.
Subnet is set to 255.255.255.0.
Gateway is not changed from 0.0.0.0
WAN is disabled.
DHCP server is disabled.

Wireless name is set to: wirelessconnection
Channel: 7
Wireless mode: AP
Wireless security: WPA
WPA Algorithm: AES
Wireless password: wireless

Advanced settings.
Authentication type: Shared key
Frame Burst: Enabled
TX Antenna: Right (my cantenna was connected to right router antenna)
RX Antenna: Right (my cantenna was connected to right router antenna)
TX Power: 250
Afterburner: Enabled

WDS
Choose LAN and enter other router MAC address.

Linksys WRT54GL DD-WRT second router
Remember to connect network cable to LAN port (not WAN port).
IP address is set to 192.168.1.3.
Subnet is set to 255.255.255.0.
Gateway is not changed from 0.0.0.0
WAN is disabled.
DHCP server is disabled.

Wireless name is set to: wirelessconnection
Channel: 7
Wireless mode: AP
Wireless security: WPA
WPA Algorithm: AES
Wireless password: wireless

Advanced settings.
Authentication type: Shared key
Frame Burst: Enabled
TX Antenna: Right (my cantenna was connected to right router antenna)
RX Antenna: Right (my cantenna was connected to right router antenna)
TX Power: 250
Afterburner: Enabled

WDS
Choose LAN and enter first router MAC address.

Linksys WRT54GL
DHCP server is disabled.
IP address is set to 192.168.1.4.
Wireless is configured to have password.

Ruby kods, kas nomaina paroli rūterim (atjauno savienojumu):
require 'rubygems'
require 'net/http'
begin
thread = Thread.new { `ping -c 1 -t 3 192.168.1.3` }
puts "Waiting on the thread..."
value = thread.value
if value.match(/1 received/).nil?
puts "not connected"
pwd = [ 'f9Up5asdasdUCE7a',
'WAxdsfdfdsfA2EMtAMet',
'bukasdsadsadabreswushe6',
[..97 more passwords..] ]
time = Time.now
rez = ((time.year*(time.hour + 1)*time.month^2 + time.month*time.day*(time.hour + 1)
+ time.yday/(time.hour + 1) + (time.wday * 100 + (time.hour + 1)))/3)%100
rez2 = (time.yday*4/3)%100
password = pwd[rez]
password2 = pwd[rez2]

if time.min <>
password = "#{password}#{password2[2]}"
elsif time.min <>
password = "#{password}#{password2[3]}"
elsif time.min <>
password = "#{password}#{password2[4]}"
elsif time.min <>
password = "#{password}#{password2[5]}"
end
res = Net::HTTP.post_form(URI.parse('http://root:admin@192.168.1.2/apply.cgi'),
{ 'submit_button'=>'WL_WPATable',
'action'=>'ApplyTake',
'change_action'=>'gozila_cgi',
'submit_type' => 'save',
'security_varname' => '',
'security_mode_last' => '',
'wl_wep_last' => '',
'filter_mac_value' => '',
'wl0_security_mode' => 'psk',
'wl0_crypto' => 'aes',
'wl0_wpa_psk' => password,
'wl0_wl_unmask' => '0',
'wl0_wpa_gtk_rekey' => '3600' })
end
rescue
puts "ERROR"
end

WDS atjaunošana tiek palaista ar crontab no serveriem abos galos (sudo crontab -e):
5,20,35,50 * * * * ruby /home/user/need/router.rb
5 7 * * * sudo ntpdate time.euro.apple.com


Mans necilais blogs ar maz ierakstiem ir atrodams šeit

Autors: Agris Ameriks  Apskatīt komentārus »

Atslēgvārdi: WiFi
Ieteikt draugiemTweet this!

Balsis: 5, vidējais vērtējums: 4.8

Vārds: E-pasts vai web-lapa:

 

« Janvāris, 2025 »

POTCPSSv
 12345
6789101112
13141516171819
20212223242526
272829303112
34567 

Fizmatu blogi

VR Pasākumiem – virtuālās real..
Lai nebūtu pārpratumu, uzreiz saku, ka šis ierakst.. (09.06)
Spēks un Jauda 2017 un ūdrs. F..
Superjaukās piedzīvojumu sacensības jau 6. reizi. .. (09.04)
Par 30 dienu rakstīšanu un nos..
Es vēl esmu dzīvs! Tas, ka no manis kādu laiku ir .. (30.03)
#6 – Domājot par krūšgaliem (A..
Cienījamās Dāmas! Ceru, ka jums ar šo jautājumu vi.. (26.03)
Amatiera padomi garo distanču ..
Ja tu spēj pusi dienas pavasara talkā vākt gružus .. (25.03)

Iz arhīva