Guest User

Untitled

a guest
Nov 19th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.20 KB | None | 0 0
  1. #!/bin/sh
  2.  
  3. # IPv6 bridge
  4. ebtables -t broute -A BROUTING -i eth0 -p ! ipv6 -j DROP
  5. brctl addif br0 eth0
  6.  
  7. # enable IPv6 on eth0
  8. echo 0 > /proc/sys/net/ipv6/conf/eth0/disable_ipv6
  9. echo 2 > /proc/sys/net/ipv6/conf/eth0/accept_dad
  10. echo 2 > /proc/sys/net/ipv6/conf/eth0/dad_transmits
  11. echo 1 > /proc/sys/net/ipv6/conf/eth0/accept_ra
  12. echo 0 > /proc/sys/net/ipv6/conf/eth0/forwarding
  13. # see lan.c config_ipv6
  14. echo 0 > /proc/sys/net/ipv6/conf/br0/disable_ipv6
  15. echo 0 > /proc/sys/net/ipv6/conf/all/disable_ipv6
  16. echo 0 > /proc/sys/net/ipv6/conf/default/disable_ipv6
  17. echo 2 > /proc/sys/net/ipv6/conf/br0/accept_dad
  18. echo 2 > /proc/sys/net/ipv6/conf/br0/dad_transmits
  19. # set_default_accept_ra
  20. echo 1 > /proc/sys/net/ipv6/conf/all/accept_ra
  21. echo 1 > /proc/sys/net/ipv6/conf/default/accept_ra
  22. echo 0 > /proc/sys/net/ipv6/conf/all/forwarding
  23. # Allow router get IPv6 Address
  24. # When user disable IPv6, system will set ip6tables ALL policy to DROP
  25. # wait after that, then set our firewall
  26. sleep 10
  27. # set up firewall
  28. ip6tables -P INPUT ACCEPT
  29. ip6tables -P OUTPUT ACCEPT
  30.  
  31. ip6tables -A OUTPUT -p tcp -j ACCEPT
  32. ip6tables -A OUTPUT -p udp -j ACCEPT
  33. # input rules
  34. ip6tables -A INPUT -p ipv6-crypt -j ACCEPT
  35. ip6tables -A INPUT -p ipv6-auth -j ACCEPT
  36. ip6tables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  37. ip6tables -A INPUT -m state --state NEW -j ACCEPT
  38. ip6tables -A INPUT -m state --state INVALID -j DROP
  39. # allow DHCPv6
  40. ip6tables -A INPUT -p udp --sport 547 --dport 546 -j ACCEPT
  41. ip6tables -A INPUT -p udp --sport 500 --dport 500 -j ACCEPT
  42. ip6tables -A INPUT -p udp --sport 4500 --dport 4500 -j ACCEPT
  43. # allow ipv6-icmp related packet
  44. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type router-solicitation -j ACCEPT
  45. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type packet-too-big -j ACCEPT
  46. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type time-exceeded -j ACCEPT
  47. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type parameter-problem -j ACCEPT
  48. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type echo-request -j ACCEPT
  49. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type echo-reply -j ACCEPT
  50. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 130 -j ACCEPT
  51. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 131 -j ACCEPT
  52. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 132 -j ACCEPT
  53. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type router-solicitation -j ACCEPT
  54. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type router-advertisement -j ACCEPT
  55. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type neighbour-solicitation -j ACCEPT
  56. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type neighbour-advertisement -j ACCEPT
  57. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 141 -j ACCEPT
  58. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 142 -j ACCEPT
  59. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 143 -j ACCEPT
  60. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 148 -j ACCEPT
  61. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 149 -j ACCEPT
  62. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 151 -j ACCEPT
  63. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 152 -j ACCEPT
  64. ip6tables -A INPUT -p ipv6-icmp --icmpv6-type 153 -j ACCEPT
  65. ip6tables -A INPUT -j DROP
  66.  
  67. # Start DHCPv6 for LAN on br0
  68. # In my enviroment, IPv6 address spwan from a DHCPv6 server
  69. odhcp6c -df -R -s /tmp/dhcp6c -N try -c yordeviceID -r23 -r24 -r82 -r83 br0
  70. # get the paramter of odhcp6c using `ps | grep odhcp6c`
Add Comment
Please, Sign In to add comment