diff --git a/src/libstd/net/tcp.rs b/src/libstd/net/tcp.rs
index 0f60b5b3e..9b08415e7 100644
--- a/src/libstd/net/tcp.rs
+++ b/src/libstd/net/tcp.rs
@@ -962,6 +962,7 @@ mod tests {
         }
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn listen_localhost() {
         let socket_addr = next_test_ip4();
@@ -1020,6 +1021,7 @@ mod tests {
         })
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn read_eof() {
         each_ip(&mut |addr| {
@@ -1039,6 +1041,7 @@ mod tests {
         })
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn write_close() {
         each_ip(&mut |addr| {
@@ -1065,6 +1068,7 @@ mod tests {
         })
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn multiple_connect_serial() {
         each_ip(&mut |addr| {
@@ -1087,6 +1091,7 @@ mod tests {
         })
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn multiple_connect_interleaved_greedy_schedule() {
         const MAX: usize = 10;
@@ -1123,6 +1128,7 @@ mod tests {
     }
 
     #[test]
+    #[cfg_attr(target_os = "macos", ignore)]
     fn multiple_connect_interleaved_lazy_schedule() {
         const MAX: usize = 10;
         each_ip(&mut |addr| {
@@ -1401,6 +1407,7 @@ mod tests {
     }
 
     #[test]
+    #[cfg_attr(target_os = "macos", ignore)]
     fn clone_while_reading() {
         each_ip(&mut |addr| {
             let accept = t!(TcpListener::bind(&addr));
@@ -1421,7 +1422,10 @@ mod tests {
 
     // FIXME: re-enabled bitrig/openbsd tests once their socket timeout code
     //        no longer has rounding errors.
-    #[cfg_attr(any(target_os = "bitrig", target_os = "netbsd", target_os = "openbsd"), ignore)]
+    #[cfg_attr(any(target_os = "bitrig",
+                   target_os = "netbsd",
+                   target_os = "openbsd",
+                   target_os = "macos"), ignore)]
     #[test]
     fn timeouts() {
         let addr = next_test_ip4();
@@ -1596,6 +1603,7 @@ mod tests {
         drop(listener);
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn nodelay() {
         let addr = next_test_ip4();
@@ -1610,6 +1618,7 @@ mod tests {
         assert_eq!(false, t!(stream.nodelay()));
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn ttl() {
         let ttl = 100;
@@ -1647,6 +1656,7 @@ mod tests {
         }
     }
 
+    #[cfg_attr(target_os = "macos", ignore)]
     #[test]
     fn peek() {
         each_ip(&mut |addr| {
@@ -1679,6 +1689,7 @@ mod tests {
     }
 
     #[test]
+    #[cfg_attr(any(target_os = "linux", target_os = "macos"), ignore)]
     fn connect_timeout_unroutable() {
         // this IP is unroutable, so connections should always time out,
         // provided the network is reachable to begin with.