| diff --git a/scapy/layers/inet6.py b/scapy/layers/inet6.py |
| index 03b80ec..a7e1e0f 100644 |
| --- a/scapy/layers/inet6.py |
| +++ b/scapy/layers/inet6.py |
| @@ -3722,6 +3722,7 @@ conf.l2types.register(31, IPv6) |
| |
| bind_layers(Ether, IPv6, type = 0x86dd ) |
| bind_layers(CookedLinux, IPv6, proto = 0x86dd ) |
| +bind_layers(GRE, IPv6, proto = 0x86dd ) |
| bind_layers(IPerror6, TCPerror, nh = socket.IPPROTO_TCP ) |
| bind_layers(IPerror6, UDPerror, nh = socket.IPPROTO_UDP ) |
| bind_layers(IPv6, TCP, nh = socket.IPPROTO_TCP ) |
| diff --git a/scapy/layers/l2.py b/scapy/layers/l2.py |
| index 4f491d2..661a5da 100644 |
| --- a/scapy/layers/l2.py |
| +++ b/scapy/layers/l2.py |
| @@ -628,7 +628,7 @@ bind_layers( CookedLinux, EAPOL, proto=34958) |
| bind_layers( GRE, LLC, proto=122) |
| bind_layers( GRE, Dot1Q, proto=33024) |
| bind_layers( GRE, Dot1AD, type=0x88a8) |
| -bind_layers( GRE, Ether, proto=1) |
| +bind_layers( GRE, Ether, proto=0x6558) |
| bind_layers( GRE, ARP, proto=2054) |
| bind_layers( GRE, EAPOL, proto=34958) |
| bind_layers( GRE, GRErouting, { "routing_present" : 1 } ) |