Project

General

Profile

QuickStart » History » Version 38

Version 37 (Alexey Z., 03/06/2013 06:21 AM) → Version 38/40 (Alexey Z., 03/06/2013 06:30 AM)

h1. Quickstart guide

h2. Creating a ZRouter build environment.

This should probably be done within a Jail.

At First, this Requires you have [[hg]]/mercurial installed:

* From FreeBSD ports:
<pre>
# cd /usr/ports/devel/mercurial
# make install clean
</pre>
* *OR* From FreeBSD packages:
<pre>
# pkg_add -r mercurial (or # pkg install mercurial)
</pre>

# Create a path set aside for ZRouter build.
<pre># mkdir -p ZRouter/</pre>
# Enter directory:
<pre># cd ZRouter</pre>
# Checkout/clone ZRouter Project
<pre># hg clone http://zrouter.org/hg/zrouter/</pre>
# Checkout/clone Current compatible FreeBSD source:
<pre># hg clone http://zrouter.org/hg/FreeBSD/head FreeBSD</pre>
# Begin ZRouter Build Menu
<pre># ./menu.sh</pre>

h2. Entering ./menu.sh

!mainmenu.jpg!

# Select your target device (example D-Link DIR-632):
!Target.jpg!
# Select Base Profile. That's two choise:
- Small - size firmware > 4 MB (if your ROM more than 4 MB)
- Extra small - size firmware <= 4MB (if your ROM less than 4 MB)
!kernel.jpg!
# At "Profiles" select package that included firmware:
- DEBUG_ - ?
- ath - ? (atheros driver)
- dhclient - FreeBSD native DHCP client. Include dhclient, ahclient-script.
- dhcp - FreeBSD native DHCP server and client. Include dhcpd, dhclient, dhcrelay.
- dig_spcdns - ?
- hostap - authentication and encryption for IEEE 802.11 networks. Include hostapd, hostapd_cli, wpa_cli, wpa_passphrase, wpa_supplicant.
- ipfw - stateful "firewall written for FreeBSD":http://www.freebsd.org/doc/handbook/firewalls-ipfw.html. Include ipfw, ipfw_nat, dummynet
- lagg - ? (interface allows aggregation of multiple network interface)
- lua_web_ui - Simple Web User Interface based on Lua. Include its own http server.
- mono - ?

- mpd - ? netgraph based implementation of the multi-link PPP protocol for FreeBSD
- mroute - IP multicast routing. Include kernel options MROUTING

- net_help - ? help network utilities.
- nfs_client - client for supports the "Network File System":http://en.wikipedia.org/wiki/Network_File_System ("NFS":http://www.freebsd.org/doc/en/books/handbook/network-nfs.html)
- ng_igmp_fwd -
- ntpdate - for clock synchronization over "Network Time Protocol (NTP)":http://en.wikipedia.org/wiki/Network_Time_Protocol ("NTP":http://www.freebsd.org/doc/en/books/handbook/network-ntp.html).
- openvpn - create a "Virtual Private Network (VPN)":http://en.wikipedia.org/wiki/VPN. Include "OpenVPN":http://openvpn.net, crypto libraries.
- ppp - utilities for support and configuring "Point-to-Point Protocol":http://en.wikipedia.org/wiki/Point-to-Point_Protocol ("PPP":http://www.freebsd.org/doc/ru/books/handbook/ppp-and-slip.html)
- racoon -
- racoon2 -
- shttpd -
- ssh - enable "SSH service":http://en.wikipedia.org/wiki/Secure_Shell. Include ssh, sshd, SSH PAM service file and /etc/ssh configs.
- watchdog - if software freeze, then "watchdog":http://en.wikipedia.org/wiki/Watchdog_timer H/W reset system. Include watchdogd and rc.d script.
- zhttpd -
!package.jpg!
# Last that must to do - select paths of source and build object:
!path.jpg!
- Path of FreeBSD/head
!Path_head.jpg!
- Path of objects (temporary direcroty where will be compilate your firmware)
!path_obj.jpg!
Then go back to main menu:
!path_back.jpg!
# You can save your selection to "Build Profile" for future use (file will be created at "./Zrouter/zrouter/build_profiles/" ):
!save_menu.jpg!
!save.jpg!
# You can load your Build Profile if you save it early:
!load_menu.jpg!
!load.jpg!
# Now select to "Build" and you see all your choices:
!Compilate.jpg!
Answer "yes" and firmware will begining.

h2. "Flash your firmware":http://zrouter.org/projects/zrouter/wiki/Howto_flash