Wstęp
Wielu użytkowników poszukuje rozwiązania w jaki sposób uruchomić Neostradę z wykorzystaniem modemu SpeedTouch 330 na FreeBSD.
Przedstawię wam w jaki sposób można to zrobić na systemie FreeBSD 5.4.
Wszystko co wam będzie potrzebne macie na plytce dołączonej do waszego
modemu. Tak wiec jakiekolwiek inne połączenie nie będzie wam potrzebne
do ściągania dodatkowych plików.
Instalacja
Po pierwsze po włożeniu modemu do USB sprawdzamy czy system wykrył modem poprawnie:
# dmesg | grep ugen0
ugen0: THOMSON Speed Touch 330, rev 1.10/4.00, addr 2 |
Urządzenie wykryte poprawnie, teraz pora na pliki które znajdują sie na plytce:
neostrada_tp.tgz z niego wypakujesz 2 pliki które będą nam potrzebne:
Plik podobny do tego: ST330_firmware_3012.zip
Oraz: speedtouch-1.2.tar.gz
[ Przynajmniej ja na takich wersjach testowałem. ]
W pliku ST330_firmware_3012.zip, znajdują sie 2 firmware'y do modemu SpeedTouch 330:
KQD6_3.012
ZZZL_3.012 <- ten będzie nam potrzebny
Teraz zajmijmy się plikiem speedtouch-1.2.tar.gz, w nim znajdują sie
sterowniki do SpeedTouch'a, należy je gdzieś rozpakować, a następnie:
./configure
Utworzy wam sie Makefile w głównym katalogu oraz w katalogu ' src ', należy w nich znaleść linijkę:
THREAD_LIBS=-lkse
I zamienić ją na:
THREAD_LIBS=-pthread
Oczywiście w głównym katalogu pliku Makefile i w podkatalogu src,
jak to juz zrobisz, wystarczy skompilować i zainstalować sterowniki:
#gmake; gmake install
Nie powinno być żadnych problemów z kompilacją.
Zainstalowały nam sie 3 programy: pppoa2, pppoa3, modem_run
( my będziemy korzystali z pppoa3, ale to później )
Teraz czas na firmware, kopiujemy go do katalogu /usr/local/libdata z nazwą mgmt.o
#cp ZZZL_3.012 /usr/local/libdata/mgmt.o
Teraz obrabiamy plik ppp.conf do takiej postaci:
|
#cat /etc/ppp/ppp.conf
default:
set log Phase Chat IPCP CCP tun command
ident user-ppp VERSION (built COMPILATIONDATE)
set ifaddr 10.0.0.1/0 255.255.255.0
adsl:
set authname <login>@neostrada.pl
set authkey <password>
set device !"/usr/local/sbin/pppoa3 -c -m 1 -vpi 0 -vci 35"
accept chap
set speed sync
set timeout 0
set reconnect 10 100
add default HISADDR
enable dns
|
Plik resolv.conf również:
#cat /etc/resolv.conf
nameserver 194.204.152.34
nameserver 217.98.63.164
|
Testowanie połączenia
Jeżeli zrobiłeś wszystko tak jak pokazałem, powinieneś móc sie połączyć z siecią.
Synchronizacja modemu:
#modem_run -m -f /usr/local/libdata/mgmt.o
W tym czasie powinna ci się świecić jedna dioda na zielono, a druga powinna mrugać bedzie to chwilkę trwało wiec cierpliwości.
Teraz probujemy podnieść połączenie:
|
#ppp -background adsl
Working in background mode
Using interface: tun0
PPP enable
#ifconfig tun0
tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> mtu 1500
inet 83.24.xxx.xx --> 255.255.255.0 netmask 0xffffffff
Opened by PID 490
# ping onet.pl
PING onet.pl (213.180.130.200): 56 data bytes
64 bytes from 213.180.130.200: icmp_seq=0 ttl=61 time=28.712 ms
64 bytes from 213.180.130.200: icmp_seq=1 ttl=61 time=29.979 ms
64 bytes from 213.180.130.200: icmp_seq=2 ttl=61 time=27.073 ms
|
Połączenie działa poprawnie i modem połączył się.
Teraz czeka nas tylko obróbka pliku startowego, powinien wyglądać tak:
# cat /usr/local/etc/rc.d/adsl.sh
#!/usr/local/bin/bash
case $1 in
start)
/usr/local/sbin/modem_run -m -f /usr/local/libdata/mgmt.o
sleep 2
ppp -background adsl && echo -n 'Starting ppp..'
;;
stop)
killall modem_run
killall ppp
;;
*)
echo "Usage: $0 {start|stop}"
exit 1
esac |
Neostrada i podział łącza
No dobra, neostrada nam chodzi, ale o zrobić aby reszta komputerów w sieci miała internet ?
Powiedzmy że komputer na którym instalowałeś to połączenie jest mini-routerkiem, tak więc teraz czeka cię parę zabiegów:
Do pliku konfiguracyjnego jądra dodamy opcje które umożliwią naszym pakietom wędrówkę:
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_VERBOSE_LIMIT=100
options IPFIREWALL_DEFAULT_TO_ACCEPT
options IPDIVERT |
Do pliku rc.conf dodamy:
ifconfig_vr0="inet 10.0.0.1 netmask 255.255.255.0"
firewall_enable="YES"
firewall_script="/etc/rc.firewall"
firewall_type="OPEN"
firewall_logging="YES"
ppp_nat="YES"
dhcpd_enable="YES" |
10.0.0.1 będzie twoim IP interfejsu wewnetrznego, a jednocześnie
bramką ( W tym przykładzie jest klasa A, ale można zastosować również B
i C ).
Dodamy jeszcze jeden wpis do ppp.conf ( nat enable yes ):
#cat /etc/ppp/ppp.conf
default:
set log Phase Chat IPCP CCP tun command
ident user-ppp VERSION (built COMPILATIONDATE)
set ifaddr 10.0.0.1/0 255.255.255.0
adsl:
set authname <login>@neostrada.pl
set authkey <password>
set device !"/usr/local/sbin/pppoa3 -c -m 1 -vpi 0 -vci 35"
accept chap
set speed sync
set timeout 0
set reconnect 10 100
add default HISADDR
enable dns
nat enable yes |
W takim razie większość mamy już za sobą. Jężeli masz jakiś routerek
który bedzie przypisywał sam adresy w sieci wewnętrznej to tylko
pozostaje skonfigurować go.
Jeżeli nie masz takiego routerka, to należy skonfigurować serwer
DHCP, tak aby sie nie rozpisywaćw 2 miejscach odeśle was do jednej z
części artukyłu FreeBSD DHCP
To już wszystko, teraz wystarczy ponownie uruchomić blaszaka i powinno
wszystko działać. W razie jakichś błędów lub checi modyfikacji proszę o
kontakt.
Powodzenia.
|