diff --git a/bin/installexternal.sh b/bin/installexternal.sh
index cde2d8e38d2d779b73d9f11107434c5c7e555d8a..22d4bcbe54e89f17de01e31274f00d279a7d0aa6 100755
--- a/bin/installexternal.sh
+++ b/bin/installexternal.sh
@@ -130,14 +130,14 @@ installMultidomainGrid()
         return
     fi
 
-#     # apply patch for dune versions newer than 2.3
-#     cd dune-common
-#     DUNE_VERSION=`git status | head -n 1 | awk '{ print $3 }'`
-#     if  [ "$DUNE_VERSION" == "releases/2.4" ] || [ "$DUNE_VERSION" == "master" ]; then
-#         echo "Applying patch"
-#         cd $TOPDIR/dune-multidomaingrid
-#         patch -p1 < $TOPDIR/dumux/patches/multidomaingrid-2.3.patch
-#     fi
+    # apply patch for dune versions newer than 2.3
+    cd dune-common
+    DUNE_VERSION=`git status | head -n 1 | awk '{ print $3 }'`
+    if  [ "$DUNE_VERSION" == "releases/2.4" ] || [ "$DUNE_VERSION" == "master" ]; then
+        echo "Applying patch"
+        cd $TOPDIR/dune-multidomaingrid
+        patch -p1 < $TOPDIR/dumux/patches/multidomaingrid-2.3.patch
+    fi
 
     cd $TOPDIR
 }
diff --git a/patches/multidomaingrid-2.3.patch b/patches/multidomaingrid-2.3.patch
new file mode 100644
index 0000000000000000000000000000000000000000..6bda5629d7e45a020c2944663d4bce9b31db318e
--- /dev/null
+++ b/patches/multidomaingrid-2.3.patch
@@ -0,0 +1,27 @@
+diff --git a/dune/grid/multidomaingrid/subdomaingrid/entity.hh b/dune/grid/multidomaingrid/subdomaingrid/entity.hh
+index f65c6a8..e669710 100644
+--- a/dune/grid/multidomaingrid/subdomaingrid/entity.hh
++++ b/dune/grid/multidomaingrid/subdomaingrid/entity.hh
+@@ -413,17 +413,17 @@ public:
+     return false;
+   }
+ 
+-private:
+-
+-  const GridImp& _grid;
+-  MultiDomainEntityPointer _multiDomainEntityPointer;
+-
+   const EntityWrapper& operator=(const EntityWrapper& rhs) {
+     assert(_grid == rhs._grid);
+     reset(rhs._multiDomainEntityPointer);
+     return *this;
+   }
+ 
++private:
++
++  const GridImp& _grid;
++  MultiDomainEntityPointer _multiDomainEntityPointer;
++
+   template<typename MultiDomainIteratorOrEntityPointer>
+   void reset(const MultiDomainIteratorOrEntityPointer& multiDomainEntityPointer) {
+     _multiDomainEntityPointer = multiDomainEntityPointer;