Advanced Networking
Overview
There are many thing that GWS(The Configuration Software for Telem-GW6) can't do. For instance NTP, VLAN and OpenVPN configuration. If something extra is needed then in general user's should create Linux scripts and copy them to Telem-GW6. Sometimes a change of an existing script is enough. Example scripts can be found from Telem-GW6 /usr/local/bin/ folder.
Location of Startup Scripts
/etc/init.d/
Scripts in this folder are run at system startup.
/etc/network/if-ud.d/ and /etc/network/if-down.d/
Scripts in this folder are run when an interface(for instance ethernet interface eth0) becomes available or unavailable. These scripts are needed(used) for instance for configuring the firewall or routing.
/etc/ppp/ip-up or /etc/ppp/ip-down
Scripts in this folder are run when an PPP interface becomes available or unavailable. These scripts are needed(used) for instance for configuring the firewall or routing.
Examples
A good example that is in use in production systems is NTP or PPP. Both are located at /usr/local/bin.
VLAN
For instane a script like this makes a single VLAN called vlan30
# Script to show creation of VLAN's # Copy it to /etc/network/if-up.d and change file permissions to make it executable. if [ "$IFACE" == "eth0" ] then logger "vlan_enable for interface:$IFACE" # So that from ifconfig we see vlan30 not eth0:30 vconfig set_name_type VLAN_PLUS_VID_NO_PAD vconfig rem vlan30 vconfig add eth0 30 vconfig set_egress_map vlan30 0 7 vconfig set_ingress_map vlan30 0 7 ifconfig vlan30 172.22.101.196 netmask 255.255.255.240 txqueuelen 1000 up route add default gw 172.22.101.193 vlan30 fi
Troubleshooting
For troubleshooting:
- tcpdump [1]: A powerful command-line packet analyzer.
root@telem-gw6-com8$ tcpdump --help tcpdump version 4.1.1 libpcap version 1.1.1 Usage: tcpdump [-aAbdDefIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ] [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ] [ -i interface ] [ -M secret ] [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ] [ -y datalinktype ] [ -z command ] [ -Z user ] [ expression ]
- netstat [2]: Is a command-line tool that displays network connections.
root@telem-gw6-com8$ netstat --help BusyBox v1.17.4 (2011-10-17 18:03:09 EEST) multi-call binary. Usage: netstat [-laentuwxr] Display networking information Options: -l Display listening server sockets -a Display all sockets (default: connected) -e Display other/more information -n Don't resolve names -t Tcp sockets -u Udp sockets -w Raw sockets -x Unix sockets -r Display routing table