Snort supports decoding of GRE, IP in IP and PPTP. To enable support, an extra configuration option is necessary:
$ ./configure --enable-gre