diff --git a/src/dns.c b/src/dns.c
index 8634157..5f36625 100644
--- a/src/dns.c
+++ b/src/dns.c
@@ -20,6 +20,19 @@
 #include <sys/types.h>
 #include <sys/socket.h>
 #include <netdb.h>
+#elif __MINGW32__
+# ifndef AI_NUMERICSERV
+#  define AI_NUMERICSERV 0x0008
+# endif
+# ifndef AI_ALL
+#  define AI_ALL 0x00000100
+# endif
+# ifndef AI_ADDRCONFIG
+#  define AI_ADDRCONFIG 0x00000400
+# endif
+# ifndef AI_V4MAPPED
+#  define AI_V4MAPPED 0x00000800
+# endif
 #endif
 
 static void luv_pushaddrinfo(lua_State* L, struct addrinfo* res) {
