Networking

...now browsing by category

 

SEO-Redirect

Freitag, September 28th, 2018

Im Sinne der Search Engine Optimierung sollen alle Zugriffe auf den Webserver auf eine ausgezeichnete URL weitergeleitet werden.

Die folgenden Code Schnipsel beschreiben einen möglichen Ansatz für den apache-Webserver.

Dazu müssen alle Zugriffe einfangen und auf das Ziel weitergeleitet werden:

# redirect all requests
RewriteEngine on
RewriteRule ^/(.*)$ https://zeus.m57.de/$1 [L,R]

Für das gewünschte Ziel (im SSL-VirtualHost Kontext) Zugriffe vor weiteren Redirects schützen und nur den Rest weiterleiten:

# redirect all requests, but our distinguished target
RewriteEngine on
RewriteCond %{HTTP_HOST} !^zeus.m57.de$
RewriteRule ^/(.*)$ https://zeus.m57.de/$1 [L,R]

Blaues Video im Flash-Player

Mittwoch, Juli 18th, 2012

To fix blue video on Linux Flashplayer run the following code as root and reboot.

cat << EOF > /etc/profile.d/nv_no_overlay.sh
export VDPAU_NVIDIA_NO_OVERLAY=1
EOF

mkdir -p /etc/adobe
cat << EOF > /etc/adobe/mms.cfg
# tell the flashplayer to use hw to display video content:
AVHardwareDisable = 0
FullScreenDisable = 0
EnableLinuxHWVideoDecode = 1
EOF

Skype unter Centos 6.2 installieren

Freitag, März 9th, 2012

Nachdem man das RPM von Skype heruntergeladen hat, muss man noch einige
Libraries installieren, die binding sind im Skype-RPM nicht drin (oder tun nicht, weil das rpm eigentlich für Fedora ist). Mit yum geht das am einfachsten über:

yum install libasound.so.2 libXv.so.1 libXss.so.1 libSM.so.6 libXi.so.6 \
libXrender.so.1 libXrandr.so.2 libfreetype.so.6 libfontconfig.so.1 libz.so.1 \
libgthread-2.0.so.0 libstdc++.so.6 libQtDBus.so.4 libQtGui.so.4 \
pulseaudio-libs.i686
yum localinstall --nogpgcheck skype-2.2.0.35-fedora.i586.rpm

aton und ntoa in bash

Donnerstag, März 1st, 2012

Für IPv4 Vergleiche braucht man öfter die Darstellung der IPv4 Adresse als Integer, das geht mit den folgenden BASH Funktionen:

# aton and ntoa
function ntoa() {
  local IFS=. num quad ip e
  num=$1
  for e in 3 2 1; do
    quad=$((256**$e))
    ip[$((3-$e))]=$(($num/$quad))
    num=$((num%quad))
  done
  ip[3]=${num}
  echo "${ip[*]}"
}

function aton() {
  local IFS=. ip num e
  ip=($1)
  for e in 3 2 1; do
    num=$(($num+${ip[$((3-$e))]}*256**$e))
  done
  num=$(($num+${ip[3]}))
  echo $(($num&0xFFFFFFFF))
}

Ausnutzen kann man das mit dem folgenden Beispiel:

CNW[0]=10.0.2.192  CNM[0]=255.255.255.192 CGW[0]=10.0.2.193
CNW[1]=10.0.16.0   CNM[1]=255.255.255.0   CGW[1]=10.0.16.1
CNW[2]=10.0.40.128 CNM[2]=255.255.255.128 CGW[2]=10.0.40.3

nwparams() { # fetch $2-params to ipaddr in $1
  rt=1
  i=0
  while [ $i -lt ${#CNW[*]} ]; do
    if [ "$(( $(aton $1) & $(aton ${CNM[$i]}) ))" == "$(aton {CNW[$i]})" ]; then
      rt=0
      break
    fi
    i=$((i+1))
  done
  if [ "$rt" == "1" ]; then
    return 1
  else  
    case $2 in
      nw) echo ${CNW[$i]};;
      nm) echo ${CNM[$i]};;
      gw) echo ${CGW[$i]};;
    esac
    return 0
  fi
}

if [ -z ${GW} ]; then
  if GW=$(nwparams $IP gw); then
    echo "using gw:$GW for ip:$IP."
  else
    echo "gw not found, aborting."; exit 1
  fi
fi