Linux - Multicast DVB-S router for EUMETCast

This simple script transform a linux box into a DVB-S Satellite router to receive data from Eurobird 9E used by EUMETSAT to redistribute weather satellite image. REQUIRE: DVB Tools SMCroute PCI Card supported by Linux/DVB Tools (ex. Skystar 2) #!/bin/bash #################################################################### # # # Leonardo Rizzi # # Late night 24/04/2010 # # Revision 1.0 # # Tune DVB-S pci card for Eurobird 9E shifted from 13E Hotbird # # Tune, set net PID, Enable multicasting ecc. ecc. blah blah buuuu # # # #################################################################### #Globalvar DTUNE="/usr/bin/dvbtune" DNET="/usr/bin/dvbnet" MROUTE="/usr/sbin/smcroute" IFCONFIG="/sbin/ifconfig" SERVICE="eumetsat" #Set dvbcard 0-3 INT="0" #Set multicast forwarding interface and ip (by default TelliCast bind on 192.168.238.238) MINT="eth1" MIP="192.168.238.238" #Set absolute frequency in Hz FREQ=11977000 #Set polarization POL=H #Set symbol rate SYR=27500 #Set PID one space for value separation PID="100 300 301 302 500 509 510 511" #Begin start!! case "$1" in start) # Pre-Start check test -x $DTUNE || { echo "$DTUNE not installed or not configured properly"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } test -x $DNET || { echo "$DNET not installed or not configured properly"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } test -x $MROUTE || { echo "$MROUTE not installed or not configured properly"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } test -x $IFCONFIG || { echo "$IFCONFIG not installed or not configured properly"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } test -d /dev/dvb/adapter$INT || { echo "DVB$INT device not installed or not configured properly"; if [ "$1" = "stop" ]; then exit 0; else exit 5; fi; } # Tuning the dvb frequency echo "" echo "Tune the satellite donwlink on interface ${INT}" ${DTUNE} -c ${INT} -f ${FREQ} -p ${POL} -s ${SYR} -m >/dev/null 2>&1 & # Set address on local forwarding interface and bring it up echo "" echo "Set multicast forwarding interface ${MINT}" ${IFCONFIG} ${MINT} ${MIP} multicast up # Set PID on active dvb interface echo "" echo "Set net interface for listed PID:" for i in ${PID} do echo "Bring up PID $i" ${DNET} -a ${INT} -p $i>/dev/null 2>&1 done # Set address on dvbs interfaces and bring it up echo "" echo "Set net interface up:" for ii in {0..7} do echo "Bring up dvb net interface $ii" ${IFCONFIG} dvb${INT}_$ii 192.168.22$ii.238 up >/dev/null 2>&1 done # Start multicast router echo "" echo "Enable Multicast Router" ${MROUTE} -d #PID 100 multicast forward echo "Set multicast for PID 100" ${MROUTE} -a dvb0_0 192.168.1.1 224.223.222.34 ${MINT} ${MROUTE} -a dvb0_0 192.168.1.1 224.223.222.36 ${MINT} ${MROUTE} -a dvb0_0 192.168.1.1 224.223.222.40 ${MINT} ${MROUTE} -a dvb0_0 192.168.1.1 224.223.222.223 ${MINT} #PID 300 multicast forward echo "Set multicast for PID 300" ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.21 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.31 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.32 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.37 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.226 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.252 ${MINT} ${MROUTE} -a dvb0_1 192.168.1.1 224.223.222.253 ${MINT} #PID 301 multicast forward echo "Set multicast for PID 301" ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.23 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.33 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.38 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.39 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.35 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.227 ${MINT} ${MROUTE} -a dvb0_2 192.168.1.1 224.223.222.251 ${MINT} #PID 302 multicast forward echo "Set multicast for PID 302" ${MROUTE} -a dvb0_3 192.168.1.1 224.223.222.25 ${MINT} #PID 500 multicast forward echo "Set multicast for PID 500" ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.1 ${MINT} ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.22 ${MINT} ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.28 ${MINT} ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.27 ${MINT} ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.29 ${MINT} ${MROUTE} -a dvb0_4 192.168.1.1 224.223.222.30 ${MINT} #PID 509 multicast forward echo "Set multicast for PID 509" ${MROUTE} -a dvb0_5 192.168.1.1 224.223.222.248 ${MINT} ${MROUTE} -a dvb0_5 192.168.1.1 224.223.222.249 ${MINT} ${MROUTE} -a dvb0_5 192.168.1.1 224.223.222.250 ${MINT} #PID 510 multicast forward echo "Set multicast for PID 510" ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.231 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.232 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.233 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.234 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.235 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.236 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.237 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.239 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.240 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.242 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.243 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.244 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.245 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.246 ${MINT} ${MROUTE} -a dvb0_6 192.168.1.1 224.223.222.247 ${MINT} sleep 5 ;; stop) # Stopping the dvb card echo "" echo "Stopping Satellite Downlink" killall dvbtune >/dev/null 2>&1 echo "" echo "Stopping Multicast Routing" # Stopping Multicast Router ${MROUTE} -k # Disable dvbs interfaces and remove active PID echo "" echo "Shutting down DVB-S interfaces" for iii in {0..7} do /sbin/ifconfig dvb0_$iii down >/dev/null 2>&1 ${DNET} -d $iii >/dev/null 2>&1 done # Remove and disable multicasting forwarding interface echo "" echo "Shutting down multicasting forwarding interface" ${IFCONFIG} ${MINT} del ${MIP} multicast ${IFCONFIG} ${MINT} down ;; restart) $0 stop $0 start ;; status) PID1='pidof dvbtune' echo "" echo "Tuning subsystem running at pid" $PID1 PID2='pidof smcroute' echo "" echo "Mulicast router running at pid" $PID2 ;; multicast) echo "Multicasting Routing table:" ip mroute show ;; *) echo "Usage: $0 [start|stop|restart|status|multicast]" ;; esac exit;s

10 October 2011 @ 04:19 · Updated: 29 June 2026 @ 22:00 · leo

The Windows Installer Service could not be accessed.

The Windows Installer Service could not be accessed. This can occur if you are running Windows in safe mode, or if the Windows Installer is not correctly installed. Contact your support personnel for assistance. kb315353 To resolve this issue, follow these steps: Log on to your computer as an administrator. Click Start, and then click Run. In the Open box, type cmd, and then click OK. At the command prompt, typemsiexec.exe /unregister, and then press ENTER. ...

9 October 2011 @ 03:07 · Updated: 30 June 2026 @ 03:28 · leo

AIX - DLPAR connection lost to HMC

Sometime during AIX migration/alt_clone or HMC upgrade, it can happen that RMC ID get lost or duplicated, the the rsct process is unable to re stabilize the connection. You can reset the key and restart that service as follows: Reset RMC unique ID: # /usr/sbin/rsct/install/bin/recfgct # /usr/sbin/rsct/bin/rmcctrl -z # /usr/sbin/rsct/bin/rmcctrl -A Then you can check the rmc status: # /usr/sbin/rsct/bin/rmcdomainstatus -s ctrmc

21 September 2011 @ 02:23 · Updated: 30 June 2026 @ 03:28 · leo

AS/400 - Change IP remote printer

For a network attached printer: WRKWTR and do a #4 to End the writer WRKCFGSTS *DEV *PRT and use #2 to vary off the device, then #8 to Work with description then #2 to change, then page/roll and change the IP Vary the device on WRKWTR and start the print writer

2 July 2011 @ 14:06 · Updated: 30 June 2026 @ 03:28 · leo

AIX - ODM Object Classes

AIX - ODM Device Configuration Object Classes A list of the ODM Device Configuration Object Classes follows: PdDv Predefined Devices PdCn Predefined Connection PdAt Predefined Attribute Config_Rules Configuration Rules CuDv Customized Devices CuDep Customized Dependency CuAt Customized Attribute CuDvDr Customized Device Driver CuVPD Customized Vital Product Data

2 July 2011 @ 14:00 · Updated: 29 June 2026 @ 04:47 · leo

Juniper - Netscreen upgrade via TFTP

fw01-> save software from tftp 10.255.4.210 ns50ns25.5.4.0r21.0 to flash Load software from TFTP 10.255.4.210 (file: ns50ns25.5.4.0r21.0). !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! tftp received octets = 5994268 tftp success! TFTP Succeeded Save to flash. It may take a few minutes ...platform = 14, cpu = 10, version = 18 update new flash image (01e97ddc,5994268) platform = 14, cpu = 10, version = 18 offset = 20, address = 3060000, size = 5994189 date = 4062f3e0, sw_version = 4062f3e4, cksum = f7522c46 Program flash (5994268 bytes) ... sec_size :131072 align_support 1 , mode 96028 ++++++++++++++++++++++++++++++++++++++++++++++done Done fw01-> reset System reset, are you sure? y/[n] y In reset ...

20 June 2011 @ 01:49 · Updated: 30 June 2026 @ 03:28 · leo

OpenVMS - SCSSYSTEMID

SCSSYSTEMID (G) Specifies a number that identifies the computer. This parameter is not dynamic. SCSSYSTEMID is the low-order 32 bits of the 48-bit system identification number. If the computer is in an OpenVMS Cluster, specify a value that is unique within the cluster. Do not use zero as the value. If the computer is running DECnet for OpenVMS, calculate the value from the DECnet address using the following formula: SCSSYSTEMID = ((DECnet area number) \* 1024) + (DECnet node number) ...

3 April 2011 @ 02:12 · Updated: 30 June 2026 @ 03:28 · leo

AIX - Mounting ISO images

There is a known problem with mounting ISO images on the AIX platform. To workaround the problem, complete the following instructions: Obtain the size of the image, then identify the nearest multiple of 128 MB that will provide enough space for the image. For example, the image of CD-ROM is approximately 650/700 MB, so use 768 MB as an image size. Make a logical volume of this size. Ensure that there is enough space on the physical volume. For example, hdisk0. ...

3 April 2011 @ 01:10 · Updated: 30 June 2026 @ 03:28 · leo

eToken PASS in open environment

I bought promo pack of 5 Aladdin eToken PASS units, the tokens comes with serial number in this format: XXXX-XXXX-XXXX-XXXX activated for free on the website of the manufacturer only one time of course, then used token purchased from ebay usually are unusable. The activation consists in a zip containing two ldif format dat files, you can extract the token key parsing the text from “importAlpine.dat” file: sccAuthenticatorId: (means token serial number) sccKey= (means token key) ...

23 January 2011 @ 21:00 · Updated: 29 June 2026 @ 04:47 · leo

AIX LPAR - CDROM device relase

When AIX will not release /dev/cd0 device (after umount any associted filesystems), and you get busy device error on dlpar operations, use this command to kill all processes that take busy resource: # fuser -k -x -u -c /dev/cd0 Usually in pSeries hardware configuration is connected to a scsi controller by scsi-to-ide/sas/sata or other terrible solution bridge. To made all this operation faster you can identify pci parent adapter and remove recursively all device. ...

23 January 2011 @ 20:17 · Updated: 30 June 2026 @ 03:28 · leo